{"version":3,"file":"CollectionOnline-CQx7K88u.js","sources":["../../src/queries/GetCollectionOnline.js","../../src/components/CollectionOnline.vue"],"sourcesContent":["import { artworkNavQuery } from '@/queries/ArtworkNavQuery';\nimport gql from 'graphql-tag';\nimport { pageQuery } from '@/queries/PageQuery';\n\nexport const collectionOnlineQuery = gql`\n query getCollection($id: ID!, $type: PageIdType) {\n ${artworkNavQuery}\n ${pageQuery}\n }\n`;\n","<template>\n <article v-if=\"collection\">\n <ArtworkNavHeader :back=\"false\" :filters=\"filters\"></ArtworkNavHeader>\n <section :class=\"[$style.article, 'container']\">\n <h1>Collection Online</h1>\n <ProcessContent\n v-if=\"collection\"\n :content=\"collection.content\"\n wrapper=\"section\"\n ></ProcessContent>\n </section>\n </article>\n</template>\n\n<script setup lang=\"ts\">\nimport ArtworkNavHeader from '@/components/artwork/ArtworkNavHeader.vue';\nimport { BootStrap } from '@/types/global.interface';\nimport { collectionOnlineQuery } from '@/queries/GetCollectionOnline';\nimport { dataLoaded, useHandleError, useMetaData } from '@/composables/Common.js';\nimport { inject, ref } from 'vue';\nimport ProcessContent from '@/components/common/ProcessContent.vue';\nimport { storeToRefs } from 'pinia';\nimport { useArtworkFilters } from '@/composables/ArtworkFilters.js';\nimport { useMainStore } from '@/stores/mainStore.js';\nimport { useQuery } from 'villus';\n\ninterface Collection {\n content: string;\n excerpt: string;\n title: string;\n uri: string;\n}\n\nconst bootstrap = inject<BootStrap>('bootstrap');\n\nconst { getFilters } = useArtworkFilters();\nconst { handleError } = useHandleError();\nconst { setMetaDescription, setMetaTitle } = useMetaData();\n\nconst store = useMainStore();\nconst { useBootstrap } = storeToRefs(store);\n\nconst collection = ref<Collection>({});\nconst filters = ref({});\nconst shouldSkip = ref(true);\n\nconst { data } = useQuery({\n query: collectionOnlineQuery,\n skip: shouldSkip,\n variables: {\n type: 'URI',\n id: 'collection-online',\n },\n onData: (data) => {\n if (data.page && Object.keys(data.page).length) {\n filters.value = getFilters(data);\n collection.value = data.page;\n setMetaTitle(data.page.title);\n setMetaDescription(data.page.excerpt);\n dataLoaded();\n }\n\n if (!data.page || Object.keys(data.page).length === 0) {\n handleError('CollectionOnline', window.location.pathname);\n }\n },\n});\n\nif (useBootstrap.value) {\n shouldSkip.value = true;\n\n if (\n bootstrap &&\n bootstrap.initial &&\n bootstrap.initial.queried_object &&\n bootstrap.initial.queried_object.pagedata &&\n bootstrap.initial.queried_object.pagedata !== null\n ) {\n const { page } = bootstrap.initial.queried_object.pagedata;\n\n filters.value = getFilters(bootstrap.initial.queried_object.pagedata);\n collection.value = page;\n setMetaTitle(collection.value.title);\n setMetaDescription(collection.value.excerpt);\n dataLoaded();\n }\n\n if (\n bootstrap &&\n bootstrap.initial &&\n (!bootstrap.initial.queried_object || !bootstrap.initial.queried_object.pagedata)\n ) {\n shouldSkip.value = false;\n }\n}\n\nif (!useBootstrap.value) {\n shouldSkip.value = false;\n}\n</script>\n\n<script lang=\"ts\">\nexport default {\n beforeRoute(params, villusClient) {\n return new Promise<void>((resolve, reject) => {\n villusClient\n .executeQuery({\n query: collectionOnlineQuery,\n variables: {\n id: 'collection-online',\n type: 'URI',\n },\n })\n .then(() => resolve())\n .catch((err) => reject(err));\n });\n },\n};\n</script>\n\n<style lang=\"scss\" module>\n.article {\n @include space-48-64-above;\n\n > h1 {\n margin: 0;\n }\n}\n\n@media (min-width: $break-point) {\n .article {\n @include grid;\n\n & {\n margin-top: 0;\n }\n\n > h1 {\n grid-column: 1 / span 6;\n }\n\n > nav {\n grid-column: 1 / span 8;\n }\n\n > section {\n @include grid-content;\n\n & {\n grid-column: span 12;\n }\n }\n }\n}\n</style>\n"],"names":["collectionOnlineQuery","gql","artworkNavQuery","pageQuery","__default__","params","villusClient","resolve","reject","err","bootstrap","inject","getFilters","useArtworkFilters","handleError","useHandleError","setMetaDescription","setMetaTitle","useMetaData","store","useMainStore","useBootstrap","storeToRefs","collection","ref","filters","shouldSkip","useQuery","data","dataLoaded","page"],"mappings":"ieAIO,MAAMA,EAAwBC;AAAA;AAAA,MAE/BC,CAAe;AAAA,MACfC,CAAS;AAAA;AAAA,YC+FAC,EAAA,CACb,YAAYC,EAAQC,EAAc,CAChC,OAAO,IAAI,QAAc,CAACC,EAASC,IAAW,CAC5CF,EACG,aAAa,CACZ,MAAON,EACP,UAAW,CACT,GAAI,oBACJ,KAAM,KAAA,CACR,CACD,EACA,KAAK,IAAMO,GAAS,EACpB,MAAOE,GAAQD,EAAOC,CAAG,CAAC,CAAA,CAC9B,CAAA,CAEL,+CApFM,MAAAC,EAAYC,EAAkB,WAAW,EAEzC,CAAE,WAAAC,CAAW,EAAIC,EAAkB,EACnC,CAAE,YAAAC,CAAY,EAAIC,EAAe,EACjC,CAAE,mBAAAC,EAAoB,aAAAC,CAAa,EAAIC,EAAY,EAEnDC,EAAQC,EAAa,EACrB,CAAE,aAAAC,CAAA,EAAiBC,EAAYH,CAAK,EAEpCI,EAAaC,EAAgB,EAAE,EAC/BC,EAAUD,EAAI,EAAE,EAChBE,EAAaF,EAAI,EAAI,EAwB3B,GAtBiBG,EAAS,CACxB,MAAO3B,EACP,KAAM0B,EACN,UAAW,CACT,KAAM,MACN,GAAI,mBACN,EACA,OAASE,GAAS,CACZA,EAAK,MAAQ,OAAO,KAAKA,EAAK,IAAI,EAAE,SAC9BH,EAAA,MAAQb,EAAWgB,CAAI,EAC/BL,EAAW,MAAQK,EAAK,KACXA,EAAAA,EAAK,KAAK,KAAK,EACTA,EAAAA,EAAK,KAAK,OAAO,EACzBC,EAAA,IAGT,CAACD,EAAK,MAAQ,OAAO,KAAKA,EAAK,IAAI,EAAE,SAAW,IACtCd,EAAA,mBAAoB,OAAO,SAAS,QAAQ,CAC1D,CAEH,CAAA,EAEGO,EAAa,MAAO,CAGtB,GAFAK,EAAW,MAAQ,GAGjBhB,GACAA,EAAU,SACVA,EAAU,QAAQ,gBAClBA,EAAU,QAAQ,eAAe,UACjCA,EAAU,QAAQ,eAAe,WAAa,KAC9C,CACA,KAAM,CAAE,KAAAoB,CAAS,EAAApB,EAAU,QAAQ,eAAe,SAElDe,EAAQ,MAAQb,EAAWF,EAAU,QAAQ,eAAe,QAAQ,EACpEa,EAAW,MAAQO,EACNb,EAAAM,EAAW,MAAM,KAAK,EAChBP,EAAAO,EAAW,MAAM,OAAO,EAChCM,EAAA,CAAA,CAIXnB,GACAA,EAAU,UACT,CAACA,EAAU,QAAQ,gBAAkB,CAACA,EAAU,QAAQ,eAAe,YAExEgB,EAAW,MAAQ,GACrB,CAGE,OAACL,EAAa,QAChBK,EAAW,MAAQ"}