{"version":3,"file":"DatasetDetailsCategories.vue.mjs","sources":["../../lib/datasetDetails/DatasetDetailsCategories.vue"],"sourcesContent":["<template>\n  <div class=\"dsd-categories mt-3\">\n    <div class=\"row\">\n      <div class=\"col-10 offset-1\">\n        <h2>{{ $t('message.datasetDetails.subnav.categories') }}</h2>\n        <div class=\"dsd-categories-items mt-4 mb-5\">\n          <div v-for=\"(category, i) in getCategories\" :key=\"i\" class=\"p-2 mt-3 border border-secondary\">\n            <app-link :to=\"getCategoryLink(category)\" v-if=\"showCategory(category)\">\n              {{ getTranslationFor(category.title, $route.query.locale) }}\n            </app-link>\n          </div>\n          <div v-if=\"getCategories && getCategories.length === 0\">\n            <p>{{ $t('message.datasetCategories.noCategories') }}</p>\n          </div>\n        </div>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\n  import { mapActions, mapGetters } from 'vuex';\n  import { has } from 'lodash-es';\n  import { getTranslationFor } from '../utils/helpers';\n  import AppLink from \"../widgets/AppLink.vue\";\n  import * as metaInfo from \"../composables/head\";\n\n  export default {\n    name: 'datasetDetailsCategories',\n    components: {\n      appLink: AppLink,\n    },\n    data() {\n      return {};\n    },\n    computed: {\n      ...mapGetters('datasetDetails', [\n        'getID',\n        'getCategories',\n      ]),\n    },\n    methods: {\n      has,\n      getTranslationFor,\n      ...mapActions('datasetDetails', [\n        'loadDatasetDetails',\n      ]),\n      showCategory(category) {\n        return has(category, 'id');\n      },\n      getCategoryLink(category) {\n        const categoryID = category.id.toUpperCase();\n        return { path: `/datasets?categories=${categoryID}`, query: Object.assign({}, { locale: this.$route.query.locale }) };\n      },\n    },\n    created() {\n      this.$nextTick(() => {\n        // Duplicated API call, execute only if data not already loaded\n        if (this.$route.params.ds_id !== this.getID) {\n          this.$Progress.start();\n          this.loadDatasetDetails(this.$route.params.ds_id)\n            .then(() => {\n              this.$Progress.finish();\n            })\n            .catch(() => {\n              this.$Progress.fail();\n              this.$router.replace({\n                name: 'NotFound',\n                query: { locale: this.$route.query.locale, dataset: this.$route.params.ds_id },\n              });\n            });\n        }\n      });\n    },\n    setup() {\n      metaInfo.useDatasetCategoriesHead();\n    }\n  };\n</script>\n\n<style scoped lang=\"scss\">\n.tag-color {\n  background-color: var(--tag-color);\n}\n.keywords__item > div {\n  padding-left: 0.25rem;\n  padding-right: 0.25rem;\n}\n</style>\n"],"names":["_sfc_main","AppLink","mapGetters","has","getTranslationFor","mapActions","category","metaInfo.useDatasetCategoriesHead","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_openBlock","_createElementBlock","_createElementVNode","_ctx","_Fragment","_renderList","i","$options","_createBlock","_component_app_link","_hoisted_5"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA2BE,MAAKA,IAAU;AAAA,EACb,MAAM;AAAA,EACN,YAAY;AAAA,IACV,SAASC;AAAA,EACV;AAAA,EACD,OAAO;AACL,WAAO;EACR;AAAA,EACD,UAAU;AAAA,IACR,GAAGC,EAAW,kBAAkB;AAAA,MAC9B;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACF;AAAA,EACD,SAAS;AAAA,IACP,KAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,GAAGC,EAAW,kBAAkB;AAAA,MAC9B;AAAA,IACF,CAAC;AAAA,IACD,aAAaC,GAAU;AACrB,aAAOH,EAAIG,GAAU,IAAI;AAAA,IAC1B;AAAA,IACD,gBAAgBA,GAAU;AAExB,aAAO,EAAE,MAAM,wBADIA,EAAS,GAAG,YAAW,CACO,IAAI,OAAO,OAAO,OAAO,CAAA,GAAI,EAAE,QAAQ,KAAK,OAAO,MAAM,OAAQ,CAAA;IACnH;AAAA,EACF;AAAA,EACD,UAAU;AACR,SAAK,UAAU,MAAM;AAEnB,MAAI,KAAK,OAAO,OAAO,UAAU,KAAK,UACpC,KAAK,UAAU,SACf,KAAK,mBAAmB,KAAK,OAAO,OAAO,KAAK,EAC7C,KAAK,MAAM;AACV,aAAK,UAAU;OAChB,EACA,MAAM,MAAM;AACX,aAAK,UAAU,QACf,KAAK,QAAQ,QAAQ;AAAA,UACnB,MAAM;AAAA,UACN,OAAO,EAAE,QAAQ,KAAK,OAAO,MAAM,QAAQ,SAAS,KAAK,OAAO,OAAO,MAAO;AAAA,QAChF,CAAC;AAAA,MACH,CAAC;AAAA,IAEP,CAAC;AAAA,EACF;AAAA,EACD,QAAQ;AACNC,IAAAA;EACF;GA3EGC,IAAA,EAAA,OAAM,sBAAqB,GACzBC,IAAA,EAAA,OAAM,MAAK,GACTC,IAAA,EAAA,OAAM,kBAAiB,GAErBC,IAAA,EAAA,OAAM,iCAAgC;;;AAJjD,SAAAC,EAAA,GAAAC,EAgBM,OAhBNL,GAgBM;AAAA,IAfJM,EAcM,OAdNL,GAcM;AAAA,MAbJK,EAYM,OAZNJ,GAYM;AAAA,QAXJI,EAA6D,cAAtDC,EAAE,GAAA,0CAAA,CAAA,GAAA,CAAA;AAAA;QACTD,EASM,OATNH,GASM;AAAA,WARJC,EAAA,EAAA,GAAAC,EAIMG,GAJuB,MAAAC,EAAAF,EAAA,eAAhB,CAAAT,GAAUY,YAAvBL,EAIM,OAAA;AAAA,YAJuC,KAAKK;AAAA,YAAG,OAAM;AAAA;YACTC,EAAA,aAAab,CAAQ,UAArEc,EAEWC,GAAA;AAAA;cAFA,IAAIF,EAAe,gBAACb,CAAQ;AAAA;yBACrC,MAA4D;AAAA,oBAAzDa,EAAiB,kBAACb,EAAS,OAAOS,EAAM,OAAC,MAAM,MAAM,CAAA,GAAA,CAAA;AAAA;;;;;UAGjDA,EAAa,iBAAIA,EAAa,cAAC,WAAM,UAAhDF,EAEM,OAAAS,GAAA;AAAA,YADJR,EAAyD,aAAnDC,EAAE,GAAA,wCAAA,CAAA,GAAA,CAAA;AAAA;;;;;;;"}