{"version":3,"file":"ExhibitionsArchive-r4cCrsNa.js","sources":["../../src/queries/ExhibitionsArchiveQuery.js","../../src/queries/ExhibitionsNavQuery.js","../../src/queries/ExhibitionsArchive.js","../../src/components/exhibitions/ExhibitionsNav.vue","../../src/components/exhibitions/ExhibitionsArchive.vue"],"sourcesContent":["export const exhibitionsArchiveQuery = `\n  nodes {\n    dates {\n      end {\n        day\n        month\n        year\n      }\n      label\n      start {\n        day\n        month\n        year\n      }\n      status\n    }\n    excerpt\n    featuredImage {\n      node {\n        altText\n        sourceUrl\n      }\n    }\n    imageSrcset\n    slug\n    title\n  }\n`;\n","export const exhibitionsNavQuery = `\n  exhibitionYears(first: 100, where: { hideEmpty: true }) {\n    nodes {\n      name\n      slug\n    }\n  }\n  sites(first: 100, where: { hideEmpty: true }) {\n    nodes {\n      name\n      slug\n    }\n  }\n`;\n","import { exhibitionsArchiveQuery } from '@/queries/ExhibitionsArchiveQuery';\nimport { exhibitionsNavQuery } from '@/queries/ExhibitionsNavQuery';\nimport gql from 'graphql-tag';\nimport { paginationQuery } from '@/queries/PaginationQuery';\n\nexport const exhibitionsArchiveFullQuery = gql`\n  query getExhibitions(\n    $filter: String,\n    $paged: Int,\n    $past: Boolean,\n    $site: String,\n    $subType: String\n    $subTypeValue: String\n    $type: String\n    $year: String\n  ) {\n    exhibitions(first: 8, where: { paged: $paged, past: $past, site: $site, year: $year }) {\n      ${exhibitionsArchiveQuery}\n    }\n    ${exhibitionsNavQuery}\n    ${paginationQuery}\n  }\n`;\n","<template>\n  <nav v-if=\"menu.sites && menu.sites.nodes.length\" class=\"nav-bar\">\n    <ul>\n      <li :class=\"[{ active: selected === 'venues' }, 'nav-subtypes']\">\n        <button\n          :class=\"['button-filter', selected === 'venues' ? 'up' : 'down']\"\n          :ga4-event=\"\n            JSON.stringify({\n              filter_location: 'exhibitions',\n              filter_type: 'venue',\n              filter_value: 'Venues',\n              gtm_tag: 'filter',\n            })\n          \"\n          @click.stop.prevent=\"select('venues')\"\n        >\n          Venues\n        </button>\n        <ul v-if=\"selected === 'venues'\" id=\"venues\" ref=\"venuesDropdown\" class=\"nav-items\">\n          <li\n            v-for=\"(venue, key) in menu.sites.nodes\"\n            :key=\"key\"\n            :class=\"{ pressed: term === venue.slug }\"\n          >\n            <router-link\n              :ga4-event=\"\n                JSON.stringify({\n                  filter_location: 'exhibitions',\n                  filter_type: 'venue',\n                  filter_value: `${venue.name}`,\n                  gtm_tag: 'filter',\n                })\n              \"\n              :to=\"{\n                name: 'ExhibitionsArchiveTerm',\n                params: {\n                  from,\n                  name: venue.name,\n                  type: 'site',\n                  term: venue.slug,\n                },\n              }\"\n            >\n              {{ venue.name }}\n            </router-link>\n          </li>\n        </ul>\n      </li>\n      <li :class=\"[{ active: selected === 'years' }, 'nav-subtypes']\">\n        <button\n          :class=\"['button-filter', selected === 'venues' ? 'up' : 'down']\"\n          :ga4-event=\"\n            JSON.stringify({\n              filter_location: 'exhibitions',\n              filter_type: 'year',\n              filter_value: 'Years',\n              gtm_tag: 'filter',\n            })\n          \"\n          @click.stop.prevent=\"select('years')\"\n        >\n          Exhibition Year\n        </button>\n        <ul v-if=\"selected === 'years'\" id=\"years\" ref=\"yearsDropdown\" class=\"nav-items\">\n          <li\n            v-for=\"(exhibitionYear, key) in menu.exhibitionYears.nodes\"\n            :key=\"key\"\n            :class=\"{ pressed: term === exhibitionYear.slug }\"\n          >\n            <router-link\n              :ga4-event=\"\n                JSON.stringify({\n                  filter_location: 'exhibitions',\n                  filter_type: 'year',\n                  filter_value: `${exhibitionYear.name}`,\n                  gtm_tag: 'filter',\n                })\n              \"\n              :to=\"{\n                name: 'ExhibitionsArchiveTerm',\n                params: {\n                  from,\n                  name: exhibitionYear.name,\n                  type: 'year',\n                  term: exhibitionYear.slug,\n                },\n              }\"\n            >\n              {{ exhibitionYear.name }}\n            </router-link>\n          </li>\n        </ul>\n      </li>\n    </ul>\n  </nav>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue';\nimport { useFilterInteractions } from '@/composables/Common.js';\n\ndefineProps<{\n  from: string;\n  menu: object;\n  name?: string;\n  term?: string;\n  type?: string;\n}>();\n\nconst selected = ref('');\nconst venuesDropdown = ref(null);\nconst yearsDropdown = ref(null);\n\nconst { selectNav } = useFilterInteractions(selected);\n\nfunction select(index): void {\n  selectNav(index, [venuesDropdown.value, yearsDropdown.value]);\n}\n</script>\n\n<style lang=\"scss\">\n@use '@/styles/navigation.module.scss' as *;\n</style>\n","<template>\n  <section v-if=\"results.exhibitions.nodes.length\">\n    <ExhibitionsNav\n      :from=\"past || from === 'past' ? 'past' : ''\"\n      :menu=\"menu\"\n      :name=\"name\"\n      :term=\"term\"\n      :type=\"type\"\n    ></ExhibitionsNav>\n    <header :class=\"$style.content\">\n      <nav :class=\"$style.back\">\n        <BackLink\n          v-if=\"site || year\"\n          component=\"ExhibitionsArchive\"\n          group=\"exhibition\"\n          :label=\"from === 'past' ? 'Past Exhibitions' : 'Exhibitions'\"\n          :name=\"from === 'past' ? 'ExhibitionsPast' : 'ExhibitionsArchive'\"\n          :params=\"{ past: from === 'past' }\"\n        ></BackLink>\n      </nav>\n      <h1 :class=\"{ [$style.isArchive]: !site && !year }\" v-html=\"getTitle()\"></h1>\n    </header>\n    <div :class=\"$style.content\">\n      <article\n        v-for=\"(item, key) in results.exhibitions.nodes\"\n        :key=\"key\"\n        :class=\"$style.exhibition\"\n      >\n        <figure>\n          <router-link\n            v-if=\"item.featuredImage\"\n            class=\"aspect-container\"\n            :to=\"{ name: 'ExhibitionsPost', params: { slug: item.slug } }\"\n            :ga4-event=\"\n              JSON.stringify({\n                click_type: 'image',\n                component: 'ExhibitionsArchive',\n                content_group: 'exhibition',\n                gtm_tag: 'linked_image',\n                file_name: `${item.featuredImage.node.sourceUrl.split('/').pop()}`,\n                link_url: `${item.slug}`,\n              })\n            \"\n          >\n            <picture>\n              <img\n                :alt=\"item.featuredImage.node.altText\"\n                :src=\"proxySource(item.featuredImage.node.sourceUrl)\"\n                :srcset=\"item.imageSrcset\"\n                class=\"aspect-image\"\n                loading=\"lazy\"\n                sizes=\"(min-width: 960px) 870px, 100vw\"\n              />\n            </picture>\n          </router-link>\n          <figcaption>\n            <h2>\n              <router-link\n                :to=\"{ name: 'ExhibitionsPost', params: { slug: item.slug } }\"\n                :ga4-event=\"\n                  JSON.stringify({\n                    click_type: 'title',\n                    component: 'ExhibitionsArchive',\n                    content_group: 'exhibition',\n                    gtm_tag: 'link',\n                    link_text: `${item.title}`,\n                    link_url: `${item.slug}`,\n                  })\n                \"\n                v-html=\"item.title\"\n              ></router-link>\n            </h2>\n            <span v-if=\"item.dates && item.dates.label\" class=\"subtitle-2 space-8-10-above\">\n              {{ item.dates.label }}\n            </span>\n            <ExhibitionDate\n              v-else-if=\"item.dates\"\n              :begin=\"item.dates.start\"\n              :end=\"item.dates.end\"\n              class=\"space-8-10-above\"\n            ></ExhibitionDate>\n            <p :class=\"$style.excerpt\" v-html=\"item.excerpt\"></p>\n          </figcaption>\n        </figure>\n      </article>\n      <GuggenPagination\n        :bootstrap-total=\"+total\"\n        :current-page=\"page\"\n        :filter=\"past ? 'past' : null\"\n        :has-bootstrap=\"total > 0\"\n        :per-page=\"limit\"\n        :sub-type=\"type\"\n        :sub-type-value=\"term\"\n        :total-page-count=\"pageCount\"\n        post-type=\"exhibition\"\n      ></GuggenPagination>\n    </div>\n  </section>\n</template>\n\n<script setup lang=\"ts\">\nimport BackLink from '@/components/common/BackLink.vue';\nimport { BootStrap } from '@/types/global.interface';\nimport { computed, inject, onMounted, ref } from 'vue';\nimport { dataLoaded, useHandleError, useImageProxy, useMetaData } from '@/composables/Common.js';\nimport { Exhibition } from '@/types/exhibition.interface';\nimport ExhibitionDate from '@/components/exhibitions/ExhibitionDate.vue';\nimport { exhibitionsArchiveFullQuery } from '@/queries/ExhibitionsArchive';\nimport ExhibitionsNav from '@/components/exhibitions/ExhibitionsNav.vue';\nimport GuggenPagination from '@/components/GuggenPagination.vue';\nimport { onBeforeRouteLeave } from 'vue-router';\nimport { slugToTitle } from '@/utils';\nimport { storeToRefs } from 'pinia';\nimport { useMainStore } from '@/stores/mainStore.js';\nimport { useQuery } from 'villus';\n\ninterface Exhibitions {\n  exhibitions: {\n    nodes: Array<Exhibition>;\n  };\n}\n\nconst props = withDefaults(\n  defineProps<{\n    from?: string;\n    name?: string;\n    page?: number;\n    past?: boolean;\n    term?: string;\n    type?: string;\n  }>(),\n  {\n    page: 1,\n    past: false,\n  }\n);\n\nconst bootstrap = inject<BootStrap>('bootstrap');\n\nconst store = useMainStore();\nconst { useBootstrap } = storeToRefs(store);\n\nconst { handleError } = useHandleError();\nconst { proxySource } = useImageProxy();\nconst { setMetaDescription, setMetaTitle } = useMetaData();\n\nconst limit = 8;\nconst menu = ref({\n  exhibitionYears: {\n    nodes: [],\n  },\n  sites: {\n    nodes: [],\n  },\n});\nconst results = ref<Exhibitions>({\n  exhibitions: {\n    nodes: [],\n  },\n});\nconst shouldSkip = ref(true);\nconst site = ref(null);\nconst title = props.past ? 'Past Exhibitions' : 'Exhibitions';\nconst total = ref(0);\nconst year = ref(null);\n\nconst pageCount = computed(() => Math.ceil(total.value / limit));\n\nonMounted(() => {\n  if (useBootstrap.value) {\n    shouldSkip.value = true;\n\n    if (\n      bootstrap.initial.main.posts &&\n      bootstrap.initial.main.posts.exhibitions &&\n      bootstrap.initial.main.posts.exhibitions.nodes &&\n      Object.keys(bootstrap.initial.main.posts.exhibitions.nodes).length\n    ) {\n      results.value.exhibitions.nodes = bootstrap.initial.main.posts.exhibitions.nodes;\n      menu.value = bootstrap.initial.main.posts.menus;\n      total.value = bootstrap.initial.main.pagination.total_posts;\n      setMetaTitle(title);\n      setMetaDescription();\n      dataLoaded();\n    }\n\n    if (\n      !bootstrap.initial.main.posts ||\n      !bootstrap.initial.main.posts.exhibitions ||\n      !bootstrap.initial.main.posts.exhibitions.nodes\n    ) {\n      handleError(\n        `ExhibitionsArchive,\n        paged ${props.page},\n        past ${props.past},\n        site ${site.value},\n        year ${year.value}`\n      );\n    }\n  }\n\n  if (!useBootstrap.value) {\n    shouldSkip.value = false;\n  }\n});\n\nonBeforeRouteLeave((to, from, next) => {\n  if (to.path.indexOf('/exhibitions/past') === 0) {\n    to.params.past = String(props.past);\n  }\n\n  next();\n});\n\nif (props.type) {\n  switch (props.type) {\n    case 'year':\n      year.value = props.name || props.term;\n      break;\n    case 'site':\n      site.value = props.name || props.term;\n      break;\n  }\n}\n\nconst queryVariables = {\n  filter: props.past ? 'past' : null,\n  paged: +props.page,\n  past: !!props.past,\n  site: site.value,\n  subType: props.type,\n  subTypeValue: props.term,\n  type: 'exhibition',\n  year: year.value,\n};\nconst { data } = useQuery({\n  onData: data => {\n    if (Object.keys(data).length) {\n      if (data.exhibitions.nodes.length) {\n        results.value.exhibitions.nodes = data.exhibitions.nodes;\n        menu.value = { exhibitionYears: data.exhibitionYears, sites: data.sites };\n        total.value = data.totalCount;\n        setMetaTitle(getTitle());\n        setMetaDescription();\n        dataLoaded();\n      }\n      if (data.exhibitions.nodes.length === 0) {\n        handleError(\n          `ExhibitionsArchive,\n          paged ${props.page},\n          past ${props.past},\n          site ${site.value},\n          year ${year.value}`\n        );\n      }\n    }\n  },\n  query: exhibitionsArchiveFullQuery,\n  skip: isNaN(props.page) || shouldSkip,\n  variables: queryVariables,\n});\n\nif (isNaN(props.page)) {\n  handleError(\n    `ExhibitionsArchive,\n    paged ${props.page},\n    past ${props.past},\n    site ${site.value},\n    year ${year.value}`\n  );\n}\n\nfunction getTitle(): string {\n  if (year.value) {\n    return year.value;\n  }\n\n  if (site.value) {\n    return slugToTitle(site.value);\n  }\n\n  return title;\n}\n</script>\n\n<script lang=\"ts\">\nexport default {\n  beforeRoute(params, villusClient) {\n    let site = null;\n    let year = null;\n\n    if (params.type) {\n      switch (params.type) {\n        case 'year':\n          year = params.name || params.term;\n          break;\n        case 'site':\n          site = params.name || params.term;\n          break;\n      }\n    }\n\n    return new Promise<void>((resolve, reject) => {\n      villusClient\n        .executeQuery({\n          query: exhibitionsArchiveFullQuery,\n          variables: {\n            filter: params.past ? 'past' : null,\n            paged: params.page ? +params.page : 1,\n            past: !!params.past,\n            site: site,\n            subType: params.type,\n            subTypeValue: params.term,\n            type: 'exhibition',\n            year: year,\n          },\n        })\n        .then(() => resolve())\n        .catch((err) => reject(err));\n    });\n  },\n};\n</script>\n\n<style lang=\"scss\" module>\n.back {\n  margin-top: 0.5rem;\n}\n\n.content {\n  article:first-of-type {\n    margin-top: 0;\n  }\n}\n\n.exhibition {\n  margin-top: 4rem;\n\n  figcaption {\n    span,\n    time {\n      display: block;\n    }\n  }\n  h2 {\n    margin-top: 1rem;\n\n    a {\n      text-decoration: none;\n\n      &:focus {\n        color: $white;\n      }\n\n      &:hover {\n        text-decoration: underline;\n      }\n    }\n  }\n}\n\n@media (min-width: $break-point) {\n  .back {\n    margin-top: 0;\n  }\n\n  .content {\n    @include grid;\n\n    h1.isArchive {\n      margin-top: 0;\n    }\n\n    > * {\n      grid-column: 1 / span 8;\n    }\n    > nav {\n      grid-column: span 12;\n    }\n  }\n\n  .exhibition {\n    figure {\n      display: grid;\n      grid-column-gap: $column-gutter-large;\n      grid-template-columns: repeat(8, 1fr);\n\n      a {\n        grid-column: span 8;\n      }\n\n      figcaption {\n        grid-column: 1 / span 8;\n      }\n    }\n  }\n}\n</style>\n"],"names":["exhibitionsArchiveQuery","exhibitionsNavQuery","exhibitionsArchiveFullQuery","gql","paginationQuery","selected","ref","venuesDropdown","yearsDropdown","selectNav","useFilterInteractions","select","index","__default__","params","villusClient","site","year","resolve","reject","err","props","__props","bootstrap","inject","store","useMainStore","useBootstrap","storeToRefs","handleError","useHandleError","proxySource","useImageProxy","setMetaDescription","setMetaTitle","useMetaData","limit","menu","results","shouldSkip","title","total","pageCount","computed","onMounted","dataLoaded","onBeforeRouteLeave","to","from","next","queryVariables","useQuery","data","getTitle","slugToTitle"],"mappings":"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"}