{"version":3,"mappings":";ghBAEO,MAAMA,EAAkBC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EC6ChBC,EAAA,CACb,YAAYC,EAAQC,EAAc,CAChC,OAAO,IAAI,QAAc,CAACC,EAASC,IAAW,CAC5CF,EACG,aAAa,CACZ,MAAOJ,EACP,UAAW,CACT,KAAMG,EAAO,KACf,CACD,EACA,KAAK,IAAME,GAAS,EACpB,MAAOE,GAAQD,EAAOC,CAAG,CAAC,EAC9B,EAEL,yDA5CA,MAAMC,EAAYC,EAAqB,IAAMC,EAAA,WAAO,yBAAkC,yBAAC,EAEjFC,EAAQC,EAIR,CAAE,YAAAC,CAAY,EAAIC,EAAe,EACjC,CAAE,mBAAAC,EAAoB,aAAAC,CAAa,EAAIC,EAAY,EAEnDC,EAAQC,EAAe,EAEZ,OAAAC,EAAS,CACxB,OAAQC,GAAQ,CACVA,EAAK,YAAc,OAAO,KAAKA,EAAK,UAAU,EAAE,SAClDH,EAAM,MAAQG,EAAK,WACNA,IAAK,WAAW,KAAK,EACfA,IAAK,WAAW,OAAO,EAC/BC,EAAA,IAGT,CAACD,EAAK,YAAc,OAAO,KAAKA,EAAK,UAAU,EAAE,SAAW,IAClDR,EAAA,aAAcF,EAAM,IAAI,CAExC,EACA,MAAOX,EACP,UAAW,CAAE,KAAMW,EAAM,IAAK,CAC/B","names":["audioTrackQuery","gql","__default__","params","villusClient","resolve","reject","err","AudioTags","defineAsyncComponent","__vitePreload","props","__props","handleError","useHandleError","setMetaDescription","setMetaTitle","useMetaData","track","ref","useQuery","data","dataLoaded"],"ignoreList":[],"sources":["../../src/queries/GetAudioTrack.js","../../src/components/audio/AudioTrack.vue"],"sourcesContent":["import gql from 'graphql-tag';\n\nexport const audioTrackQuery = gql`\n query ($slug: ID!) {\n audioTrack(id: $slug, idType: SLUG) {\n __typename\n content\n databaseId\n duration\n excerpt\n featuredImage {\n node {\n altText\n description\n mediaDetails {\n height\n width\n }\n sourceUrl\n }\n }\n featuredImageWidth\n imageSrcset\n fileUrl\n scApiUrl\n scCreatedAt\n tags {\n nodes {\n name\n slug\n }\n }\n title\n useMp3\n }\n }\n`;\n","<template>\n <div v-if=\"track && Object.keys(track).length\" :class=\"[$style.track, 'container']\">\n <AudioHeader :audio-data=\"track\" :class=\"$style.header\"></AudioHeader>\n <ProcessContent wrapper=\"section\" :content=\"track.content\"></ProcessContent>\n <AudioTags v-if=\"track.tags.nodes.length\" :tags=\"track.tags.nodes\"></AudioTags>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { AudioData } from '@/types/audio.interface';\nimport AudioHeader from '@/components/audio/AudioHeader.vue';\nimport { audioTrackQuery } from '@/queries/GetAudioTrack';\nimport { defineAsyncComponent, ref } from 'vue';\nimport { dataLoaded, useHandleError, useMetaData } from '@/composables/Common.js';\nimport ProcessContent from '@/components/common/ProcessContent.vue';\nimport { useQuery } from 'villus';\n\nconst AudioTags = defineAsyncComponent(() => import('@/components/audio/AudioTags.vue'));\n\nconst props = defineProps<{\n slug: string;\n}>();\n\nconst { handleError } = useHandleError();\nconst { setMetaDescription, setMetaTitle } = useMetaData();\n\nconst track = ref<AudioData>();\n\nconst { data } = useQuery({\n onData: data => {\n if (data.audioTrack && Object.keys(data.audioTrack).length) {\n track.value = data.audioTrack;\n setMetaTitle(data.audioTrack.title);\n setMetaDescription(data.audioTrack.excerpt);\n dataLoaded();\n }\n\n if (!data.audioTrack || Object.keys(data.audioTrack).length === 0) {\n handleError('AudioTrack', props.slug);\n }\n },\n query: audioTrackQuery,\n variables: { slug: props.slug },\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: audioTrackQuery,\n variables: {\n slug: params.slug,\n },\n })\n .then(() => resolve())\n .catch((err) => reject(err));\n });\n },\n};\n</script>\n\n<style lang=\"scss\" module>\n@media (min-width: $break-point) {\n .track {\n @include grid;\n\n > * {\n grid-column: 1 / span 8;\n }\n\n .discover-more {\n grid-column: 1 / span 8;\n }\n\n .header {\n grid-column: span 12;\n }\n }\n}\n</style>\n"],"file":"assets/AudioTrack-Cn3HdSjR.js"}