From cc9968bd06262bad66c6ff68e772f8e3c13f2a7c Mon Sep 17 00:00:00 2001 From: Joakim Olsson Date: Mon, 6 Apr 2020 10:19:18 +0200 Subject: [PATCH] chore: make auth and apollo a bit more reactive --- codegen.yml | 6 + components/pages/events/Event/index.vue | 2 +- components/pages/events/List/index.vue | 6 +- components/pages/events/index.vue | 67 +- components/pages/filters/index.vue | 34 +- components/pages/origins/index.vue | 21 +- fragmentTypes.json | 5 + layouts/default.vue | 2 +- middleware/auth.js | 12 + nuxt.config.js | 65 +- package.json | 3 + plugins/apollo.js | 218 +++-- plugins/auth.js | 97 +- yarn.lock | 1149 +++++++++++++++++++++-- 14 files changed, 1327 insertions(+), 360 deletions(-) create mode 100644 codegen.yml create mode 100644 fragmentTypes.json create mode 100644 middleware/auth.js diff --git a/codegen.yml b/codegen.yml new file mode 100644 index 0000000..ef8d782 --- /dev/null +++ b/codegen.yml @@ -0,0 +1,6 @@ +schema: ./schema.graphql +overwrite: true +generates: + ./fragmentTypes.json: + plugins: + - fragment-matcher diff --git a/components/pages/events/Event/index.vue b/components/pages/events/Event/index.vue index 7a8a221..36d1361 100644 --- a/components/pages/events/Event/index.vue +++ b/components/pages/events/Event/index.vue @@ -70,7 +70,7 @@ >{{ event.danceHall.state }} - + mdi-home -
- +
+ @@ -79,10 +79,10 @@ - - diff --git a/components/pages/filters/index.vue b/components/pages/filters/index.vue index b97c6c1..ae3a7ab 100644 --- a/components/pages/filters/index.vue +++ b/components/pages/filters/index.vue @@ -5,43 +5,38 @@ - + @@ -74,8 +69,8 @@ import { } from '~/utils/graph-client' import List from './List' -import { useMutation, useQuery } from '../../../plugins/apollo' -import useAuth from '../../../plugins/auth' +import { useMutation, useQuery, useResult } from '../../../plugins/apollo' +import { useAuth } from '../../../plugins/auth' import { useTranslation } from '../../../plugins/i18n' export default { @@ -88,6 +83,11 @@ export default { setTitle(t('app.links.filters')) const { isAuthenticated } = useAuth() const { data, loading, refetch } = useQuery(fetchFilters) + const bands = useResult(data, [], data => data.bands) + const cities = useResult(data, [], data => data.cities) + const danceHalls = useResult(data, [], data => data.danceHalls) + const municipalities = useResult(data, [], data => data.municipalities) + const states = useResult(data, [], data => data.states) const snackbar = ref({ active: false, color: 'success', text: '' }) const [doToggleIgnoreBand] = useMutation(toggleIgnoreBand) const [doToggleIgnoreDanceHall] = useMutation(toggleIgnoreDanceHall) @@ -97,7 +97,7 @@ export default { const toggleIgnoreSuccess = name => { return () => { - refetch.value() + refetch() snackbar.value.color = 'success' snackbar.value.text = t('filters.success', { name }) snackbar.value.active = true @@ -146,7 +146,11 @@ export default { return { isAuthenticated, loading, - data, + bands, + danceHalls, + cities, + municipalities, + states, snackbar, toggleIgnore } diff --git a/components/pages/origins/index.vue b/components/pages/origins/index.vue index 2cf143b..3d1c823 100644 --- a/components/pages/origins/index.vue +++ b/components/pages/origins/index.vue @@ -30,8 +30,8 @@ -