{"version":3,"file":"app.91bad1112ce2584a.js","mappings":"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","sources":["webpack://tdb2/./src/components/layout/page-content.vue","webpack://tdb2/src/components/layout/page-content.vue","webpack://tdb2/./src/components/layout/page-content.vue?3617","webpack://tdb2/./src/components/layout/page-content.vue?21a4","webpack://tdb2/./src/plugins/bootstrap-vue.js","webpack://tdb2/./src/plugins/vuelidate.js","webpack://tdb2/./src/plugins/icons.js","webpack://tdb2/./src/plugins/leaflet.js","webpack://tdb2/./src/App.vue","webpack://tdb2/./src/components/layout/default.vue","webpack://tdb2/./src/components/layout/main-nav.vue","webpack://tdb2/./src/components/layout/nav-animalkind.vue","webpack://tdb2/src/components/layout/nav-animalkind.vue","webpack://tdb2/./src/components/layout/nav-animalkind.vue?6d5d","webpack://tdb2/./src/components/layout/nav-animalkind.vue?1923","webpack://tdb2/./src/components/layout/main-menu.vue","webpack://tdb2/./src/components/layout/login.vue","webpack://tdb2/src/components/layout/login.vue","webpack://tdb2/./src/components/layout/login.vue?2590","webpack://tdb2/./src/components/layout/login.vue?e968","webpack://tdb2/src/components/layout/main-menu.vue","webpack://tdb2/./src/components/layout/main-menu.vue?a93e","webpack://tdb2/./src/components/layout/main-menu.vue?4561","webpack://tdb2/./src/components/layout/lang-select.vue","webpack://tdb2/src/components/layout/lang-select.vue","webpack://tdb2/./src/components/layout/lang-select.vue?59df","webpack://tdb2/./src/components/layout/lang-select.vue?6ef0","webpack://tdb2/src/components/layout/main-nav.vue","webpack://tdb2/./src/components/layout/main-nav.vue?1f4d","webpack://tdb2/./src/components/layout/main-nav.vue?e36c","webpack://tdb2/./src/components/layout/loading-indicator.vue","webpack://tdb2/src/components/layout/loading-indicator.vue","webpack://tdb2/./src/components/layout/loading-indicator.vue?0300","webpack://tdb2/./src/components/layout/loading-indicator.vue?5cb6","webpack://tdb2/./src/components/layout/notifications.vue","webpack://tdb2/src/components/layout/notifications.vue","webpack://tdb2/./src/components/layout/notifications.vue?0178","webpack://tdb2/./src/components/layout/notifications.vue?10aa","webpack://tdb2/./src/components/layout/main-footer.vue","webpack://tdb2/src/components/layout/main-footer.vue","webpack://tdb2/./src/components/layout/main-footer.vue?8570","webpack://tdb2/./src/components/layout/main-footer.vue?777f","webpack://tdb2/src/components/layout/default.vue","webpack://tdb2/./src/components/layout/default.vue?ebf7","webpack://tdb2/./src/components/layout/default.vue?2b6d","webpack://tdb2/./src/components/layout/maintenance.vue","webpack://tdb2/src/components/layout/maintenance.vue","webpack://tdb2/./src/components/layout/maintenance.vue?c047","webpack://tdb2/./src/components/layout/maintenance.vue?0610","webpack://tdb2/./src/components/layout/country-selection.vue","webpack://tdb2/src/components/layout/country-selection.vue","webpack://tdb2/./src/components/layout/country-selection.vue?68ea","webpack://tdb2/./src/components/layout/country-selection.vue?585f","webpack://tdb2/src/App.vue","webpack://tdb2/./src/App.vue?51dd","webpack://tdb2/./src/App.vue?0e40","webpack://tdb2/./src/router/index.js","webpack://tdb2/./src/util/initialize.js","webpack://tdb2/./src/main.js","webpack://tdb2/./src/plugins/filters.js","webpack://tdb2/./src/assets/translations/index.js","webpack://tdb2/./src/plugins/i18n.js","webpack://tdb2/./src/repository/bbay.js","webpack://tdb2/./src/repository/export.js","webpack://tdb2/./src/repository/localStorage.js","webpack://tdb2/./src/repository/mailer.js","webpack://tdb2/./src/repository/search.js","webpack://tdb2/./src/repository/system.js","webpack://tdb2/./src/repository/tdb.js","webpack://tdb2/./src/store/modules/base.js","webpack://tdb2/./src/repository/auth/accountmanagement.js","webpack://tdb2/./src/store/modules/admin.js","webpack://tdb2/./src/store/modules/upload.js","webpack://tdb2/./src/store/modules/notification.js","webpack://tdb2/./src/repository/auth/account.js","webpack://tdb2/./src/store/modules/auth/token.js","webpack://tdb2/./src/store/modules/auth/account.js","webpack://tdb2/./src/store/modules/auth/user.js","webpack://tdb2/./src/store/modules/auth.js","webpack://tdb2/./src/store/modules/country.js","webpack://tdb2/./src/store/modules/offer/management.js","webpack://tdb2/./src/store/modules/offer/search.js","webpack://tdb2/./src/store/modules/offer.js","webpack://tdb2/./src/store/modules/related.js","webpack://tdb2/./src/repository/geocode.js","webpack://tdb2/./src/store/modules/location.js","webpack://tdb2/./src/store/modules/page.js","webpack://tdb2/./src/store/modules/region.js","webpack://tdb2/./src/store/modules/request/formfield.js","webpack://tdb2/./src/store/modules/request/main.js","webpack://tdb2/./src/store/modules/request/view.js","webpack://tdb2/./src/store/modules/request.js","webpack://tdb2/./src/util/bbay.js","webpack://tdb2/./src/store/modules/bbay.js","webpack://tdb2/./src/store/modules/mailer.js","webpack://tdb2/./src/store/modules/list.js","webpack://tdb2/./src/store/modules/redirect.js","webpack://tdb2/./src/store/modules/i18n.js","webpack://tdb2/./src/store/main.js","webpack://tdb2/./src/store/hooks/offers.js","webpack://tdb2/./src/store/hooks/auth.js","webpack://tdb2/./src/store/hooks/events.js","webpack://tdb2/./src/store/hooks/request.js","webpack://tdb2/./src/store/hooks/language.js","webpack://tdb2/./src/store/index.js","webpack://tdb2/./src/util/array.js","webpack://tdb2/./src/util/document-helper.js","webpack://tdb2/./src/util/env.js","webpack://tdb2/./src/util/eventbus.js","webpack://tdb2/./src/util/form/offer-field.js","webpack://tdb2/./src/util/jwt-cache.js","webpack://tdb2/./src/util/request.js","webpack://tdb2/./node_modules/moment/locale/ sync ^\\.\\/.*$","webpack://tdb2/webpack/bootstrap","webpack://tdb2/webpack/runtime/chunk loaded","webpack://tdb2/webpack/runtime/compat get default export","webpack://tdb2/webpack/runtime/define property getters","webpack://tdb2/webpack/runtime/ensure chunk","webpack://tdb2/webpack/runtime/get javascript chunk filename","webpack://tdb2/webpack/runtime/get mini-css chunk filename","webpack://tdb2/webpack/runtime/global","webpack://tdb2/webpack/runtime/hasOwnProperty shorthand","webpack://tdb2/webpack/runtime/load script","webpack://tdb2/webpack/runtime/make namespace object","webpack://tdb2/webpack/runtime/node module decorator","webpack://tdb2/webpack/runtime/publicPath","webpack://tdb2/webpack/runtime/css loading","webpack://tdb2/webpack/runtime/jsonp chunk loading","webpack://tdb2/webpack/startup"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{domProps:{\"innerHTML\":_vm._s(_vm.content)}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./page-content.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./page-content.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./page-content.vue?vue&type=template&id=e6312984&\"\nimport script from \"./page-content.vue?vue&type=script&lang=js&\"\nexport * from \"./page-content.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\nimport { BootstrapVue, IconsPlugin } from 'bootstrap-vue';\n//*import 'bootstrap/dist/css/bootstrap.min.css';\nimport 'bootstrap-vue/dist/bootstrap-vue.css';\n\nVue.use(BootstrapVue);\nVue.use(IconsPlugin);\n","import Vue from 'vue';\nimport Vuelidate from 'vuelidate';\n\nVue.use(Vuelidate);\n","import Vue from 'vue';\nimport { library } from '@fortawesome/fontawesome-svg-core';\nimport { FontAwesomeIcon } from '@fortawesome/vue-fontawesome';\nimport {\n\tfaGlobe,\n\tfaTrash\n} from '@fortawesome/free-solid-svg-icons';\n\n/*\n * add icons here to make them globally available\n */\n\nlibrary.add(\n\tfaGlobe,\n\tfaTrash\n);\n\nVue.component('v-icon', FontAwesomeIcon);\n","import Vue from 'vue';\nimport { LMap, LTileLayer, LMarker, LPopup, LTooltip, LCircleMarker, LIcon } from 'vue2-leaflet';\nimport 'leaflet/dist/leaflet.css';\nimport { Icon } from 'leaflet';\n\nVue.component('l-map', LMap);\nVue.component('l-tile-layer', LTileLayer);\nVue.component('l-marker', LMarker);\nVue.component('l-circle-marker', LCircleMarker);\nVue.component('l-popup', LPopup);\nVue.component('l-tooltip', LTooltip);\nVue.component('l-icon', LIcon);\n\n//webpack workaround\ndelete Icon.Default.prototype._getIconUrl;\nIcon.Default.mergeOptions({\n\ticonRetinaUrl: require('leaflet/dist/images/marker-icon-2x.png'),\n\ticonUrl: require('leaflet/dist/images/marker-icon.png'),\n\tshadowUrl: require('leaflet/dist/images/marker-shadow.png'),\n});\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"app\"}},[(_vm.isMaintenance)?_c('LayoutMaintenance'):(_vm.isCountrySelected)?_c('LayoutDefaut'):_c('LayoutCountrySelect')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',{staticClass:\"no-padding\",attrs:{\"fluid\":\"\"}},[_c('div',{staticClass:\"nav-wrapper\"},[_c('b-container',[_c('Notifications'),_c('b-row',{attrs:{\"no-gutters\":\"\"}},[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('MainNav')],1)],1)],1)],1),_c('LoadingIndicator'),_c('router-view'),_c('MainFooter')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"main-nav\"}},[_c('b-navbar',{attrs:{\"toggleable\":\"sm\",\"type\":\"dark\"}},[_c('b-navbar-brand',{attrs:{\"to\":{ name: 'Home' }}},[(_vm.$t('header.logo') === 'organicXlivestock')?_c('b-img',{attrs:{\"src\":require(\"@/assets/logo-w.png\"),\"height\":\"34\",\"alt\":_vm.$t('altText.home.logo')}}):_c('b-nav-text',[_vm._v(\" \"+_vm._s(_vm.$t('header.logo'))+\" \")])],1),_c('b-nav-text',[_vm._v(\" \"+_vm._s(_vm.$t('header.title'))+\" - \"+_vm._s(_vm._f(\"toLocale\")(_vm.countryLabels))+\" - \"+_vm._s(_vm.$t('common.role.'+_vm.role))+\" \")]),_c('b-navbar-nav',{staticClass:\"ml-auto\"},[_c('lang-select'),_c('main-menu')],1)],1),_c('NavAnimalkind')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-nav',{staticClass:\"select-animal\",attrs:{\"pills\":\"\"}},[_vm._l((_vm.animalmenusTopLevel),function(top){return [(_vm.componentType(top) === 'b-nav-item')?_c('b-nav-item',{key:top.id,attrs:{\"to\":{ name: 'OfferSearch', params: { id: top.data.animalkind } }}},[_vm._v(\" \"+_vm._s(_vm.topMenuLabel(top))+\" \")]):_vm._e(),(_vm.componentType(top) === 'b-nav-item-dropdown')?_c('b-nav-item-dropdown',{key:top.id,class:_vm.animalkindLabelWhenSubmenu(_vm.$route.params.id, top) ? 'dropdown-link-active' : null,attrs:{\"text\":_vm.topMenuLabel(top)}},_vm._l((_vm.toMenuIds(top.data.submenuItems)),function(entry){return _c('b-dropdown-item',{key:entry.id,attrs:{\"to\":{ name: 'OfferSearch', params: { id: entry.data.animalkind } }}},[_vm._v(\" \"+_vm._s(_vm._f(\"toLocale\")(entry.data.labels))+\" \")])}),1):_vm._e(),(_vm.componentType(top) === 'b-nav-text')?_c('b-nav-text',{key:top.id},[_vm._v(\" \"+_vm._s(_vm.topMenuLabel(top))+\" \")]):_vm._e()]})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\t\n\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./nav-animalkind.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./nav-animalkind.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./nav-animalkind.vue?vue&type=template&id=6214b972&\"\nimport script from \"./nav-animalkind.vue?vue&type=script&lang=js&\"\nexport * from \"./nav-animalkind.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-nav-item-dropdown',{attrs:{\"text\":_vm.$t('navigation.menu'),\"right\":\"\"}},[(!_vm.adminParty)?_c('login'):_vm._e(),_c('b-dropdown-divider'),_vm._l((_vm.groups),function(group){return _c('b-dropdown-group',{key:group,attrs:{\"header\":_vm.$t('menu.group.'+group)}},_vm._l((_vm.links(group)),function(link){return _c('b-dropdown-item',{key:JSON.stringify({ route: link.route, params: link.params }),attrs:{\"active\":_vm.$route.path === link.path,\"to\":{ name: link.route, params: link.params }}},[_vm._v(\" \"+_vm._s(link.tl)+\" \")])}),1)})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-dropdown-group',{attrs:{\"header\":_vm.$t('menu.user')}},[(_vm.isLoggedIn)?[_c('b-dropdown-text',[_vm._v(\" \"+_vm._s(_vm.accountName)+\" \"),(_vm.userDeactivated(_vm.accountDetails))?[_vm._v(\" \"+_vm._s(_vm.$t('menu.accountDeactivated'))+\" \")]:_vm._e()],2),(_vm.showProfile)?_c('b-dropdown-item',{attrs:{\"to\":{ name: 'Profile' }}},[_c('b-icon-gear-fill',{attrs:{\"scale\":\"0.8\"}}),_vm._v(\" \"+_vm._s(_vm.$t('menu.profile'))+\" \")],1):_vm._e(),_c('b-dropdown-item-button',{attrs:{\"variant\":\"secondary\"},on:{\"click\":_vm.logout}},[_c('b-icon-door-closed',{attrs:{\"scale\":\"0.9\"}}),_vm._v(\" \"+_vm._s(_vm.$t('menu.logout'))+\" \")],1),(_vm.switchableAccounts.length > 0)?_c('b-dropdown-group',{attrs:{\"header\":_vm.$t('menu.switchTo')}},_vm._l((_vm.switchableAccounts),function(acc){return _c('b-dropdown-item',{key:acc.id,on:{\"click\":function($event){return _vm.switchAccount(acc)}}},[_vm._v(\" \"+_vm._s(_vm.toAccountName(acc))+\" (\"+_vm._s(acc.data.staticData.role)+\") \"),(_vm.userDeactivated(acc.data))?[_vm._v(\" \"+_vm._s(_vm.$t('menu.accountDeactivated'))+\" \")]:_vm._e()],2)}),1):_vm._e()]:_c('b-dropdown-item-button',{attrs:{\"variant\":\"primary\"},on:{\"click\":_vm.gotoLogin}},[_vm._v(\" \"+_vm._s(_vm.$t('menu.loginText'))+\" \")])],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./login.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./login.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./login.vue?vue&type=template&id=df603534&\"\nimport script from \"./login.vue?vue&type=script&lang=js&\"\nexport * from \"./login.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./main-menu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./main-menu.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./main-menu.vue?vue&type=template&id=4f54a6ec&\"\nimport script from \"./main-menu.vue?vue&type=script&lang=js&\"\nexport * from \"./main-menu.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.country.data.languages.length > 1)?_c('b-nav-item-dropdown',{attrs:{\"text\":_vm.$t('navigation.language'),\"right\":\"\"}},_vm._l((_vm.country.data.languages),function(lang,i){return _c('b-dropdown-item',{key:i + lang,attrs:{\"active\":lang === _vm.$store.state.base.uiLocale},on:{\"click\":function($event){return _vm.selectLang(lang)}}},[_vm._v(\" \"+_vm._s(_vm.$t(`default.language.${lang}`))+\" \")])}),1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./lang-select.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./lang-select.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./lang-select.vue?vue&type=template&id=543093f8&\"\nimport script from \"./lang-select.vue?vue&type=script&lang=js&\"\nexport * from \"./lang-select.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./main-nav.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./main-nav.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./main-nav.vue?vue&type=template&id=7ba1a9bb&\"\nimport script from \"./main-nav.vue?vue&type=script&lang=js&\"\nexport * from \"./main-nav.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"spinner-container d-flex justify-content-center\"},[(_vm.opacity > 0)?_c('b-spinner',{staticStyle:{\"padding-top\":\"3rem\",\"width\":\"5rem\",\"height\":\"5rem\"},attrs:{\"id\":\"PageLoadingIndicator\",\"label\":_vm.$t('loadingIndicatorLabel'),\"variant\":\"primary\"}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./loading-indicator.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./loading-indicator.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./loading-indicator.vue?vue&type=template&id=ae325a6e&scoped=true&\"\nimport script from \"./loading-indicator.vue?vue&type=script&lang=js&\"\nexport * from \"./loading-indicator.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ae325a6e\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./notifications.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./notifications.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./notifications.vue?vue&type=template&id=3304033e&\"\nimport script from \"./notifications.vue?vue&type=script&lang=js&\"\nexport * from \"./notifications.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"footer-wrapper\"},[_c('b-container',[_c('PageContent',{attrs:{\"usage\":\"footer\"}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./main-footer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./main-footer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./main-footer.vue?vue&type=template&id=31494bdc&\"\nimport script from \"./main-footer.vue?vue&type=script&lang=js&\"\nexport * from \"./main-footer.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./default.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./default.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./default.vue?vue&type=template&id=939d8268&scoped=true&\"\nimport script from \"./default.vue?vue&type=script&lang=js&\"\nexport * from \"./default.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"939d8268\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-jumbotron',{staticClass:\"m-5\",attrs:{\"header\":\"Tiermittel-Datenbank\"}},[_c('p',[_vm._v(_vm._s(_vm.$t('maintenanceText')))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./maintenance.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./maintenance.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./maintenance.vue?vue&type=template&id=4b077c2e&\"\nimport script from \"./maintenance.vue?vue&type=script&lang=js&\"\nexport * from \"./maintenance.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-jumbotron',{staticClass:\"m-5\",attrs:{\"header\":_vm.$t('countrySelection.tdb')}},[_c('Notifications'),_c('LoadingIndicator'),_c('p',[_vm._v(_vm._s(_vm.$t('countrySelection.select')))]),_c('b-list-group',_vm._l((_vm.countries),function(country){return _c('b-list-group-item',{key:country.id},[_c('b-link',{on:{\"click\":function($event){return _vm.select(country)}}},[_vm._v(\" \"+_vm._s(_vm._f(\"toLocale\")(country.data.labels))+\" \")])],1)}),1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./country-selection.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./country-selection.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./country-selection.vue?vue&type=template&id=130ab3b0&scoped=true&\"\nimport script from \"./country-selection.vue?vue&type=script&lang=js&\"\nexport * from \"./country-selection.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"130ab3b0\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n","import mod from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=785789cb&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\nimport VueRouter from 'vue-router';\n\nimport Store from '../store/index.js';\nimport EventHub from '@/util/eventbus.js';\nimport { EtrackerCode } from '@/util/env.js';\n\nVue.use(VueRouter);\n\n\nlet waitForUserLoaded = new Promise(res => {\n\tStore.watch(() => Store.getters['auth/user/isLoaded'], a => {\n\t\tif (a) res();\n\t});\n});\n\nexport async function createRouter(prefix, admin) {\n\tlet routes = [];\n\tif (admin) {\n\t\tlet adminRoutes = await import(/* webpackChunkName: \"admin\" */ './admin.js');\n\t\troutes = adminRoutes.default;\n\t} else {\n\t\troutes = await Promise.all([\n\t\t\timport(/* webpackChunkName: \"user\" */ './guest.js'),\n\t\t\timport(/* webpackChunkName: \"user\" */ './user.js')\n\t\t]).then(list => {\n\t\t\treturn list.flatMap(e => e.default);\n\t\t});\n\t}\n\t// console.log('routes', routes);\n\tconst router = new VueRouter({\n\t\troutes,\n\t\tmode: 'history',\n\t\tbase: prefix\n\t});\n\trouter.beforeEach((to, from, next) => {\n\t\tif (!to.meta || !to.meta.roles) return next();\n\t\treturn waitForUserLoaded.then(() => {\n\t\t\tfor (let role of to.meta.roles) {\n\t\t\t\tif (Store.getters['auth/user/hasRole'](role)) return next();\n\t\t\t}\n\t\t\treturn next({ name: 'Home' });\n\t\t});\n\t});\n\trouter.beforeEach((to, from, next) => {\n\t\tEventHub.$emit('page.change', { from, to });\n\t\treturn next();\n\t});\n\trouter.afterEach((to) => {\n\t\tif (typeof _etracker === 'object') {\n\t\t\t// eslint-disable-next-line no-undef, camelcase\n\t\t\tif (EtrackerCode) et_eC_Wrapper({ et_et: EtrackerCode });\n\t\t}\n\t});\n\treturn router;\n}\n","import EventBus from '@/util/eventbus.js';\nimport { setToken } from './jwt-cache.js';\nimport { AdminParty, CommitSha } from './env.js';\nimport store from '@/store';\nimport Vue from 'vue';\nimport { i18n } from '@/plugins/i18n';\nimport { log } from './request';\nimport * as LocalStorage from '@/repository/localStorage.js';\n\nfunction checkForMaintenance(e) {\n\tif (!e || !e.message) return false;\n\tif (e.message.includes('service is currently not available. check back later') || e.message.includes('Failed to fetch')) {\n\t\tstore.commit('base/setIsMaintenance');\n\t\treturn true;\n\t}\n\treturn false;\n}\n\nfunction getExtraLogData() {\n\treturn {\n\t\tua: navigator.userAgent,\n\t\tlang: navigator.language,\n\t\tplat: navigator.platform,\n\t\tloc: window.location.href,\n\t\tsx: screen.width,\n\t\tsy: screen.height,\n\t\tapp: 'tdb',\n\t\tbuild: CommitSha\n\t};\n}\n\nasync function logError(data) {\n\ttry {\n\t\tawait log({ ...data, ...getExtraLogData() });\n\t} catch (e) {\n\t\tconsole.log('error during error logging', e);\n\t}\n}\n\nexport async function initialize() {\n\n\twindow.onerror = function(message, source, lineno, colno, error) {\n\t\tconsole.log('window.onerror', error);\n\t\tEventBus.$emit('error', error);\n\t\tlet maintenance = checkForMaintenance(error);\n\t\tif (!maintenance) {\n\t\t\tlogError({ message, source, lineno, colno, error });\n\t\t}\n\t};\n\n\t// notification handling\n\tEventBus.$on('error', (error, title) => {\n\t\tstore.commit('notification/add', {\n\t\t\ttype: 'error',\n\t\t\ttitle: title || 'Error',\n\t\t\tbody: error.message ? error.message : JSON.stringify(error),\n\t\t\ttime: Date.now(),\n\t\t});\n\t\tconsole.log(error);\n\t});\n\tEventBus.$on('warning', (title, body) => {\n\t\tstore.commit('notification/add', {\n\t\t\ttype: 'warning',\n\t\t\ttitle,\n\t\t\tbody,\n\t\t\ttime: Date.now(),\n\t\t});\n\t\tconsole.log(title, '|', body);\n\t});\n\tEventBus.$on('message', (title, body) => {\n\t\tstore.commit('notification/add', {\n\t\t\ttype: 'message',\n\t\t\ttitle,\n\t\t\tbody,\n\t\t\ttime: Date.now(),\n\t\t});\n\t\tconsole.log(title, '|', body);\n\t});\n\tEventBus.$on('success', (title, body) => {\n\t\tstore.commit('notification/add', {\n\t\t\ttype: 'success',\n\t\t\ttitle,\n\t\t\tbody,\n\t\t\ttime: Date.now(),\n\t\t});\n\t\tconsole.log(title, '|', body);\n\t});\n\n\t// error handling\n\tif (process.env.NODE_ENV === 'production') {\n\t\tVue.config.errorHandler = function(error) {\n\t\t\tcheckForMaintenance(error);\n\t\t\tconsole.log('vue.errorHandler', error);\n\t\t\tEventBus.$emit('error', error);\n\t\t};\n\t\tVue.config.warnHandler = function(error) {\n\t\t\tcheckForMaintenance(error);\n\t\t\tconsole.log('vue.warnHandler', error);\n\t\t\tEventBus.$emit('warning', error);\n\t\t};\n\t\twindow.addEventListener('unhandledrejection', event => {\n\t\t\tcheckForMaintenance(event.reason);\n\t\t});\n\t}\n\n\n\tif (!AdminParty && store.getters['auth/token/isLoggedIn']) {\n\t\tsetToken(store.getters['auth/token/currentToken']);\n\t\tstore.dispatch('auth/user/loadAvailableAccounts');\n\t\tstore.dispatch('auth/user/loadAccountData');\n\t}\n\n\n\tstore.dispatch('auth/token/initApp').catch(err => console.log(err));\n\ti18n.locale = store.state.base.uiLocale;\n\ttry {\n\t\tawait store.dispatch('country/init');\n\t\tawait store.dispatch('i18n/loadLanguage', { language: store.state.base.uiLocale });\n\t} catch (e) {\n\t\tif (!checkForMaintenance(e)) throw e;\n\t}\n\n\tLocalStorage.cleanRequestFormDrafts();\n\n\tdocument.title = i18n.t('document.title');\n}\n","// import '@babel/polyfill';\nimport 'mutationobserver-shim';\nimport Vue from 'vue';\nimport './plugins/bootstrap-vue';\nimport './plugins/vuelidate';\nimport './plugins/icons';\nimport './plugins/filters';\nimport './plugins/leaflet';\nimport './plugins/module-css';\nimport { i18n } from './plugins/i18n';\nimport '@/assets/scss/custom.scss';\nimport App from './App.vue';\nimport { createRouter } from './router';\nimport store from './store';\nimport { initialize } from '@/util/initialize.js';\nimport EventHub from '@/util/eventbus.js';\n\ninitialize()\n\t.then(() => {\n\t\tlet prefix = store.getters['country/urlPrefix'];\n\t\tlet admin = store.getters['country/isAdmin'];\n\t\treturn createRouter(prefix, admin);\n\t}).then(router => {\n\t\tEventHub.$on('navigate', route => {\n\t\t\trouter.push(route);\n\t\t});\n\t\tnew Vue({\n\t\t\trouter,\n\t\t\tstore,\n\t\t\trender: h => h(App),\n\t\t\ti18n\n\t\t}).$mount('#app');\n\t});\n\nVue.config.productionTip = false;\n","import Vue from 'vue';\nimport moment from 'moment';\nimport Store from '@/store/index.js';\nimport { i18n } from './i18n';\nimport * as Common from 'tdbcommon';\n\n/*\n * common filters that can be used in vue-templates as 'var | filter'\n * or used directly in code if exported here\n */\n\nexport function toDate(dateString) {\n\treturn moment(dateString);\n}\n\nexport function toTimeFormat(date) {\n\tif (!date) return '';\n\tconst format = Store.state.base.userTimeFormat;\n\treturn moment(date).format(format);\n}\n\nexport function toDateFormat(date) {\n\tif (!date) return '';\n\tconst locale = window.navigator.language;\n\treturn moment(date).locale(locale).format('L');\n}\n\nexport function toDateTimeFormat(obj) {\n\tif (!obj) return '';\n\tconst format = `L ${Store.state.base.userTimeFormat}`;\n\tconst locale = window.navigator.language;\n\treturn moment(obj).locale(locale).format(format);\n}\n\nexport function toDayMonth(date) {\n\tif (!date) return '';\n\treturn moment(date).format('DD.MM.');\n}\n\nexport function toCalendarWeek(date) {\n\tif (!date) return '';\n\treturn moment(date).isoWeek();\n}\nexport function toCalendarWeekFromTo(date) {\n\tif (!date) return '';\n\tlet locale = window.navigator.language;\n\tlet d = moment(date);\n\tlet from = d.startOf('isoWeek').locale(locale).format('L');\n\tlet to = d.endOf('isoWeek').locale(locale).format('L');\n\treturn `${from} - ${to}`;\n}\n\nexport function toAccountAddress(obj) {\n\tlet data = obj.data || obj;\n\tif (data.userData?.address) {\n\t\treturn data.userData.address;\n\t}\n\tif (data.userData?.contact) {\n\t\treturn data.userData.contact;\n\t}\n\tif (data.userData?.supData?.length) {\n\t\tlet sd = data.userData.supData.find(c => c.country === Store.state.country.currentCountry.id);\n\t\tif (sd) {\n\t\t\tlet result = sd.locationsOfSale.find(los => los.default);\n\t\t\tresult = result || sd.locationsOfSale[0];\n\t\t\treturn result.address;\n\t\t}\n\t}\n\treturn null;\n}\n\nexport function toAccountName(obj) {\n\tlet data = obj.data || obj;\n\tif (data.staticData?.name) {\n\t\treturn data.staticData.name;\n\t}\n\tif (data.userData?.address?.name) {\n\t\treturn data.userData.address.name;\n\t}\n\tif (data.userData?.contact?.name) {\n\t\treturn data.userData.contact.name;\n\t}\n\tif (data.userData?.controlNumber) {\n\t\treturn data.userData.controlNumber;\n\t}\n\treturn toLosName(data);\n}\n\nexport function idToAccountName(id, list) {\n\tlet found = list.find(e => e.id === id);\n\treturn found ? toAccountName(found) : '?';\n}\n\nexport function toLosName(obj) {\n\tlet data = obj.data || obj;\n\tif (data.userData?.supData?.length) {\n\t\tlet sd = data.userData.supData.find(c => c.counrty === Store.state.country.currentCountry.id);\n\t\tif (!sd) sd = data.userData.supData[0];\n\t\tlet result = sd.locationsOfSale.find(los => los.default);\n\t\tresult = result || sd.locationsOfSale[0];\n\t\treturn result.address?.name || i18n.t('menu.noname');\n\t}\n\t// console.warn('unable to find name in ', JSON.stringify(obj));\n\treturn i18n.t('menu.noname');\n}\n\nexport function idToLosName(id, list) {\n\tlet found = list.find(e => e.id === id);\n\treturn found ? toLosName(found) : '?';\n}\n\nVue.filter('dateFormat', toDateFormat);\nVue.filter('timeFormat', toTimeFormat);\nVue.filter('dateTimeFormat', toDateTimeFormat);\nVue.filter('dayMonth', toDayMonth);\nVue.filter('calendarWeek', toCalendarWeek);\nVue.filter('calendarWeekFromTo', toCalendarWeekFromTo);\nVue.filter('toAccountName', toAccountName);\nVue.filter('idToAccountName', (id, list) => {\n\tif (Array.isArray(id)) {\n\t\tlet labels = id.map(e => {\n\t\t\treturn idToAccountName(e, list);\n\t\t});\n\t\tif (labels.length === 0) {\n\t\t\treturn '---';\n\t\t}\n\t\treturn labels.join(', ');\n\t}\n\treturn idToAccountName(id, list);\n});\n\nexport function toLocaleNoFallbackIfExists(obj) {\n\tif (!obj) return null;\n\tlet r = toLocaleNoFallback(obj);\n\tif (r === '---') return '';\n\treturn r;\n}\nexport function toLocaleIfExists(obj) {\n\tif (!obj) return null;\n\tlet r = toLocale(obj);\n\tif (r === '---') return '';\n\treturn r;\n}\nexport function toLocaleNoFallback(obj) {\n\tif (!obj) return '---';\n\tif (typeof obj === 'string') return obj;\n\tif (typeof obj === 'undefined') return '---';\n\tif (typeof obj === 'boolean') return booleanDisplay(obj);\n\tif (!Array.isArray(obj)) return '-?-';\n\tlet best = getLocaleEntry(obj, Store.state.base.uiLocale);\n\tif (best) return best;\n\treturn '---';\n}\nexport function toLocale(obj) {\n\tif (!obj) return '---';\n\tif (typeof obj === 'string') return obj;\n\tif (typeof obj === 'undefined') return '---';\n\tif (typeof obj === 'boolean') return booleanDisplay(obj);\n\tif (!Array.isArray(obj)) return '-?-';\n\tlet toCheck = Common.Config.Languages.getLanguagePriority(Store.state.base.uiLocale, Store.state.base.fallbackLocale);\n\tfor (let lang of toCheck) {\n\t\tlet val = getLocaleEntry(obj, lang);\n\t\tif (val) return val;\n\t}\n\tif (obj.length > 0) return obj[0].label;\n\treturn '---';\n}\nfunction getLocaleEntry(arr, lang) {\n\tlet entry = arr.find(e => e.lang === lang);\n\treturn entry ? entry.label : null;\n}\n\nVue.filter('toLocaleIfExists', toLocaleIfExists);\nVue.filter('toLocale', toLocale);\n\nexport function booleanDisplay(value) {\n\treturn i18n.t(value ? 'default.common.yes' : 'default.common.no');\n}\n\nVue.filter('toBooleanDisplay', booleanDisplay);\n\nVue.filter('toNumberFormat', val => {\n\tif (typeof val !== 'number') return val;\n\tlet formatter = new Intl.NumberFormat(Store.state.base.uiLocale.replace('_', '-'), {\n\t\tstyle: 'percent',\n\t\tminimumFractionDigits: 3\n\t});\n\treturn formatter.format(val / 100.0);\n});\n\nVue.filter('idToLabel', (id, list) => {\n\tif (Array.isArray(id)) {\n\t\tlet labels = id.map(e => {\n\t\t\treturn idToLabel(e, list);\n\t\t});\n\t\tif (labels.length === 0) {\n\t\t\treturn '---';\n\t\t}\n\t\treturn labels.join(', ');\n\t}\n\treturn idToLabel(id, list);\n});\n\nexport function idToLabel(id, list) {\n\tlet found = list.find(e => e.id === id);\n\treturn found ? toLocale(found.data.labels) : '?';\n}\n\nexport function formatHid(hid) {\n\tlet b = `${hid}`;\n\treturn `${b.substr(0, 3)}-${b.substr(3, 3)}-${b.substr(6, 4)}`;\n}\n\nVue.filter('hid', formatHid);\n\nexport function parseHid(string) {\n\tlet ret = string.replace(/\\D/gu, '');\n\tif (ret) return parseInt(ret.substring(0, 10));\n\treturn '';\n}\n","import de_DE from './de_DE.json';\nimport da_DK from './da_DK.json';\nimport en_GB from './en_GB.json';\nimport fr_FR from './fr_FR.json';\nimport sv_SE from './sv_SE.json';\nimport de_LU from './de_LU.json';\nimport lt_LT from './lt_LT.json';\nimport en_IE from './en_IE.json';\nimport nl_NL from './nl_NL.json';\nimport en_XI from './en_XI.json';\n\nexport const languages = {\n\tde_DE,\n\tda_DK,\n\ten_GB,\n\tfr_FR,\n\tsv_SE,\n\tde_LU,\n\tlt_LT,\n\ten_IE,\n\ten_XI,\n\tnl_NL\n};\n","import VueI18n from 'vue-i18n';\nimport Vue from 'vue';\nimport { languages } from '@/assets/translations/index.js';\nimport Common from 'tdbcommon';\n\n/*\n * translation setup\n */\n\nVue.use(VueI18n);\n\nconst fallbackTree = {};\nCommon.Config.Languages.List.forEach(lang => {\n\tlet list = Common.Config.Languages.getLanguagePriority(lang);\n\tlist.shift();\t//remove lang\n\tfallbackTree[lang] = list;\n});\n\nexport const i18n = new VueI18n({\n\tlocale: 'de_DE',\n\tfallbackLocale: fallbackTree,\n\tmessages: { ...languages }\n});\n\nexport default i18n;\n","import { get as _get, post } from '@/util/request.js';\n\nexport function create({ name, alias, paths, rules }) {\n\treturn post('bbay/ruleset/create', { name, alias, paths, rules });\n}\n\nexport function update({ id, name, paths, rules }) {\n\treturn post('bbay/ruleset/update', { id, name, paths, rules });\n}\n\nexport function get({ id, alias }) {\n\tif (id) return post('bbay/ruleset/get', { id });\n\telse if (alias) return post('bbay/ruleset/get', { alias });\n\tthrow new Error('no id or alias');\n}\n\nexport function list() {\n\treturn _get('bbay/ruleset/list');\n}\n\nexport function run({ ruleset, facts }) {\n\treturn post('bbay/evaluator/run', { ruleset, facts });\n}\n\nexport function test({ rules, facts }) {\n\treturn post('bbay/evaluator/test', { rules, facts });\n}\n","import { get, post } from '@/util/request.js';\n\nexport function getConfig(payload) {\n\treturn get('export/config/get', payload);\n}\n\nexport function createJob({ config, searchFilter, runParams, customColumnHeaders }) {\n\treturn post('export/job/create', {\n\t\tconfig, runParams, searchFilter, customColumnHeaders\n\t});\n}\n\n\nexport function getJob({ id }) {\n\treturn post('export/job/get', { id });\n}\n\nexport async function pollUntilJobComplete(jobId, wait, max) {\n\tlet res;\n\tlet success = await waitUntilTrue(async() => {\n\t\tres = await getJob({ id: jobId });\n\t\treturn res.status === 'complete';\n\t}, wait, max);\n\tif (success) return res;\n\telse throw new Error('timeout');\n}\n\nfunction wait(ms, rej) {\n\treturn new Promise(function(resolve, reject) {\n\t\tsetTimeout(rej ? reject : resolve, ms);\n\t});\n}\n\nasync function waitUntilTrue(fn, retry, max) {\n\tif (!max) max = 2000;\n\tif (!retry) retry = 100;\n\tlet start = Date.now();\n\tdo {\n\t\tlet res = await fn();\n\t\tif (res) return true;\n\t\tawait wait(retry);\n\t\t// console.log(Date.now() - start);\n\t} while (Date.now() - start < max);\n\treturn false;\n}\n","import { DOMAIN } from '../util/env';\nconst storage = window.localStorage;\n\nexport function getLastImportJob() {\n\treturn storage.getItem(`${DOMAIN}_last_import_id`);\n}\n\nexport function setLastImportId(id) {\n\tstorage.setItem(`${DOMAIN}_last_import_id`, id);\n}\n\nexport function saveRequestFormDraft(processId, data) {\n\tlet dataKey = `${DOMAIN}_rfdd_${processId}`;\n\tlet expiresKey = `${DOMAIN}_rfdt_${processId}`;\n\tif (data) {\n\t\tstorage.setItem(dataKey, JSON.stringify(data));\n\t\tstorage.setItem(expiresKey, Date.now() + 1000 * 60 * 60 * 24 * 8);\n\t} else {\n\t\tstorage.removeItem(dataKey);\n\t\tstorage.removeItem(expiresKey);\n\t}\n}\n\nexport function getRequestFormDraft(processId) {\n\tlet dataKey = `${DOMAIN}_rfdd_${processId}`;\n\tlet str = storage.getItem(dataKey);\n\tif (!str) return null;\n\ttry {\n\t\treturn JSON.parse(str);\n\t} catch (e) {\n\t\tconsole.warn(e);\n\t\treturn null;\n\t}\n}\n\nexport function cleanRequestFormDrafts() {\n\tconst now = Date.now();\n\tlet checkKey = `${DOMAIN}_rfdt_`;\n\tfor (let i=0; i now) continue;\n\t\tlet processId = key.split('_')[1];\n\t\tlet dataKey = `${DOMAIN}_rfdd_${processId}`;\n\t\tstorage.removeItem(dataKey);\n\t}\n}\n\nexport function setLastUsedAccountId(country, id) {\n\tstorage.setItem(`${DOMAIN}_last_account_${country}`, id);\n}\n\nexport function getLastUsedAccountId(country) {\n\treturn storage.getItem(`${DOMAIN}_last_account_${country}`);\n}\n","import { post } from '@/util/request.js';\n\nexport function getEmailVerificationStatus(email) {\n\treturn post('mailer/verification/check', { email });\n}\n\nexport function requestVerification(data) {\n\treturn post('mailer/verification/request', data);\n}\n\nexport function completeVerification(data) {\n\treturn post('mailer/verification/complete', data);\n}\n\nexport function ssoVerification(data) {\n\treturn post('mailer/verification/sso', data);\n}\n\nexport function templateList() {\n\treturn post('mailer/template/list');\n}\n\nexport function templateSet({ name, template, language, type }) {\n\treturn post('mailer/template/set', { name, template, language, type });\n}\n\nexport function templateGet({ template, language }) {\n\treturn post('mailer/template/get', { template, language });\n}\n","import LRU from 'lru-cache';\nimport { search } from './system.js';\nimport { post } from '@/util/request.js';\n\nconst cache = new LRU({\n\tmax: 50,\n\tmaxAge: 1000 * 60 * 10\n});\n\nexport function cachedSearch(ec, filter) {\n\tlet key = `${ec}_${JSON.stringify(filter)}`;\n\tif (!cache.has(key)) {\n\t\tlet p = search(ec, filter, { start: 0, limit: 1000 });\n\t\tcache.set(key, p);\n\t\treturn p;\n\t} else {\n\t\treturn cache.get(key);\n\t}\n}\n\nexport function runAggregateQuery(ec, filter, aggregate) {\n\treturn post('search/aggregate/run', {\n\t\tentityClass: ec,\n\t\tattributeFilter: filter,\n\t\taggregate\n\t});\n}\n","import { get, post } from '@/util/request.js';\nimport { createPatch } from 'rfc6902';\nimport LRU from 'lru-cache';\n\nconst asCache = new Map();\nlet ecListPromise;\n\nfunction getEntityclassList() {\n\treturn get('eav/entityclass/list');\n}\n\nexport async function getEntityclassByExternalId(extId) {\n\tif (!ecListPromise) {\n\t\tecListPromise = getEntityclassList();\n\t}\n\tlet list = await ecListPromise;\n\tlet ec = list.find(e => e.externalId === extId);\n\tif (!ec) throw new Error(`ec not found: ${extId}`);\n\treturn ec;\n}\n\nexport async function getAttributesetByExternalId(extId) {\n\tif (!asCache.has(extId)) {\n\t\tlet ec = await get('eav/attribute/getbyexternalid', extId);\n\t\tasCache.set(extId, ec);\n\t}\n\treturn asCache.get(extId);\n}\n\nexport function genericEntityUpdate(oldEntity, newData, changeset, surpressError) {\n\tif (!oldEntity) {\n\t\treturn null;\n\t}\n\tconst patch = createPatch(oldEntity.data, newData);\n\tif (patch.length === 0) {\n\t\treturn oldEntity;\n\t}\n\tlet payload = {\n\t\tid: oldEntity.id,\n\t\trev: oldEntity.rev,\n\t\tpatch\n\t};\n\tif (changeset && changeset !== oldEntity.attributeset) {\n\t\tpayload.changeset = changeset;\n\t}\n\treturn post('eav/entity/updatefrompatch', payload, null, surpressError);\n}\n\nexport function genericEntityCreate(entityclass, attributeset, data) {\n\treturn post('eav/entity/create', {\n\t\tentityclass,\n\t\tattributeset,\n\t\tdata\n\t});\n}\n\nexport function genericEntityDelete(id) {\n\treturn post('eav/entity/delete', { id });\n}\n\nexport function search(entityclass, filter, pagination, sorting) {\n\treturn _search(entityclass, filter, 'search/search/execute', pagination, sorting);\n}\n\nexport const searchWindow = 200;\n\nexport async function _search(entityclass, filter, endpoint, pagination, sorting) {\n\tlet result = [];\n\tlet searchRequest = {\n\t\tpagination: {\n\t\t\tstart: 0,\n\t\t\tlimit: searchWindow\n\t\t}\n\t};\n\tif (entityclass) searchRequest.entityClass = entityclass;\n\tif (filter) searchRequest.attributeFilter = filter;\n\tif (pagination) searchRequest.pagination = pagination;\n\tif (sorting) searchRequest.sorting = sorting;\n\n\tlet temp;\n\tdo {\n\t\ttemp = await post(endpoint, searchRequest);\n\t\tresult = result.concat(temp);\n\t\tif (!pagination) {\n\t\t\tsearchRequest.pagination.start += searchWindow;\n\t\t}\n\t} while (!pagination && temp && temp.length >= searchWindow);\n\n\treturn result;\n}\n\nexport async function countEntries(entityClass, filter) {\n\tconst endpoint = 'search/search/count';\n\tlet searchRequest = {\n\t\tentityClass\n\t};\n\tif (filter) searchRequest.attributeFilter = filter;\n\tlet result = await post(endpoint, searchRequest);\n\treturn result;\n}\n\nexport async function exists(entityClass, attributeFilter) {\n\tlet searchRequest = {\n\t\tentityClass,\n\t\tattributeFilter,\n\t\tpagination: {\n\t\t\tstart: 0,\n\t\t\tlimit: 1\n\t\t}\n\t};\n\tlet result = await post('search/search/execute', searchRequest);\n\treturn !!result.length;\n}\n\nconst entitycache = new LRU({\n\tmax: 500,\n\tmaxAge: 1000 * 60 * 60\n});\n\nexport function getEntityByIdRev(id, rev) {\n\tlet key = `${id}_${rev}`;\n\tlet p = entitycache.get(key);\n\tif (!p) {\n\t\tp = get(`eav/entity/link/${id}/${rev}`, {});\n\t\tentitycache.set(key, p);\n\t}\n\treturn p;\n}\nexport function getEntityByIdDate(id, date) {\n\tlet key = `${id}_${date}`;\n\tlet p = entitycache.get(key);\n\tif (!p) {\n\t\tp = get(`eav/entity/get`, { id, date });\n\t\tentitycache.set(key, p);\n\t}\n\treturn p;\n}\nexport async function getEntityById(id) {\n\tlet list = await getEntitiesById([id]);\n\tif (list.length === 0) throw new Error(`entity not found: ${id}`); // never possible?! so no translation\n\treturn list[0];\n}\nexport function getEntitiesById(ids) {\n\treturn post('search/search/ids', { ids });\n}\n\nexport function getDomain() {\n\treturn get('eav/domain/getbyurl');\n}\n\nexport function getEntityTimeline(id) {\n\treturn get('eav/entity/gettimeline', id);\n}\n","import { get, post } from '@/util/request.js';\nimport { getEntityByIdRev, getEntityById } from './system.js';\nimport { Request } from 'tdbcommon';\n\nexport function setSettings(data) {\n\treturn post('tdb/settings/update', data);\n}\n\nexport function getSettings() {\n\treturn get('tdb/settings/get');\n}\n\nexport function refreshAso() {\n\treturn get('tdb/user/refreshaso');\n}\n\nexport function notifyMissingOffergroup(name, animalkind) {\n\treturn post('tdb/notify/missingoffergroup', { name, animalkind });\n}\n\nexport function contactPageRequest(name, email, phone, controlNumber, subject, message, country) {\n\treturn post('tdb/notify/contactrequest', { name, email, phone, controlNumber, subject, message, country });\n}\n\nexport function registerAgr(data) {\n\treturn post('tdb/register/agr', data);\n}\n\nexport function requestInit(data) {\n\treturn post('tdb/request/initrequest', data);\n}\n\nexport function requestFill(data) {\n\treturn post('tdb/request/fillform', data);\n}\nexport function requestRemove(data) {\n\treturn post('tdb/request/remove', data);\n}\n\nexport function retractProcess(data) {\n\treturn post('tdb/request/retractrequest', data);\n}\n\nexport async function loadFieldForPackage(pkg) {\n\tlet list = pkg.getSteps().flatMap(step => step.getFields())\n\t\t.filter(function(value, index, self) {\n\t\t\tlet exists = self.find(e => e.id === value.id && e.rev === value.rev);\n\t\t\treturn self.indexOf(exists) === index;\n\t\t});\n\tlet res = await Promise.all(list.map(e => getEntityByIdRev(e.id, e.rev)));\n\tres = res.map(e => {\n\t\tlet f = new Request.RequestFormField();\n\t\tf.fromStorage(e);\n\t\treturn f;\n\t});\n\tpkg.getSteps().forEach(step => {\n\t\tstep.setFieldsLoaded(res);\n\t});\n}\n\nexport async function loadPackage(id, rev) {\n\tlet entity = await getEntityByIdRev(id, rev);\n\tlet pkg = new Request.RequestPackage();\n\tpkg.fromStorage(entity);\n\tawait loadFieldForPackage(pkg);\n\treturn pkg;\n}\n\n\nexport async function loadProcess(id) {\n\tlet entity = await getEntityById(id);\n\tlet process = new Request.RequestProcess();\n\tprocess.fromStorage(entity);\n\tlet pkg = await loadPackage(process.package.id, process.package.rev);\n\tprocess.setPackage(pkg);\n\treturn process;\n}\n\nexport function updateGeoPosition(data) {\n\treturn post('tdb/user/updategeoposition', data);\n}\n\nexport function setUserAgreement(data) {\n\treturn post('tdb/user/setuseragreement', data);\n}\n\nexport function setRequestStatus({ process, editorName, inProgress, statusLabel }) {\n\treturn post('tdb/request/setstatus', { process, editorName, inProgress, statusLabel });\n}\n","import * as Common from 'tdbcommon';\nimport { i18n } from '@/plugins/i18n';\n\nconst state = {\n\n\tuiLocale: 'de_DE',\n\tfallbackLocale: 'de_DE',\n\tlanguages: Common.Config.Languages.List,\n\tuserRoles: Common.Config.Users.Roles,\n\tuserTimeFormat: 'H:mm:ss',\n\tuserDateFormat: 'DD.MM.YY',\n\tCmsUsage: Common.Config.CmsUsage,\n\tmaintenanceMode: false\n\n};\n\nconst getters = {\n\tlanguages: () => {\n\t\treturn state.languages;\n\t},\n\tCmsUsage: () => {\n\t\treturn state.CmsUsage;\n\t}\n};\n\nconst actions = {\n\n};\n\nconst mutations = {\n\n\tsetUiLocale(state, lang) {\n\t\tif (!state.languages.includes(lang)) throw new Error(`invalid lang: ${lang}`);\n\t\tstate.uiLocale = lang;\n\t\ti18n.locale = lang;\n\t\tdocument.querySelector('html').setAttribute('lang', lang.substring(0, 2));\n\t},\n\n\tsetIsMaintenance(state) {\n\t\tstate.maintenanceMode = true;\n\t},\n\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","import { post } from '@/util/request.js';\nimport { getToken } from '@/util/jwt-cache.js';\n\nexport function createAccount({ registrationName, requiresConfirmation, userData, staticData }) {\n\treturn post('auth/accountmanage/createaccount', {\n\t\tregistrationName, requiresConfirmation, userData, staticData\n\t});\n}\n\nexport function updateAccount({ active, account, userData, staticData, maxUsers }) {\n\treturn post('auth/accountmanage/updateaccount', {\n\t\tactive, account, userData, staticData, maxUsers\n\t});\n}\n\nexport function removeAccount({ account }) {\n\treturn post('auth/accountmanage/removeaccount', {\n\t\taccount\n\t});\n}\n\nexport function unregisterAccount(account, ssoUser) {\n\treturn post('auth/accountmanage/unlinkaccount', { account, ssoUser }, getToken());\n}\n\nexport async function createAccountInvite({ account }) {\n\tlet { inviteId } = await post('auth/accountmanage/createaccountinvite', {\n\t\taccount\n\t}, getToken());\n\treturn inviteId;\n}\n","import {\n\tsearch, getEntityclassByExternalId, getAttributesetByExternalId, getEntityTimeline,\n\tgenericEntityCreate, genericEntityUpdate, getEntitiesById, countEntries, exists, getEntityByIdRev\n} from '@/repository/system.js';\nimport { createAccount, updateAccount } from '@/repository/auth/accountmanagement.js';\nimport { setSettings, getSettings } from '@/repository/tdb.js';\nimport LRU from 'lru-cache';\n\nconst state = {\n\tentityclasses: {\n\t\tanimalkind: null\n\t},\n\tattributesets: {\n\t\tanimalkind: null\n\t},\n\tsettings: null,\n};\n\nconst getters = {\n\tlistcache: () => type => {\n\t\treturn listcache.get(type);\n\t}\n};\n\nconst entitycache = new LRU({\n\tmax: 500,\n\tmaxAge: 1000 * 5\n});\nconst listcache = new LRU({\n\tmax: 500,\n\tmaxAge: 1000 * 60\n});\nconst timelineCache = new LRU({\n\tmax: 500,\n\tmaxAge: 1000 * 60\n});\nconst agrControlNumberFreeCache = new LRU({\n\tmax: 500,\n\tmaxAge: 1000 * 60\n});\n\nconst actions = {\n\t/* loads everything in an entityclass */\n\tloadList({ state, dispatch }, { type }) {\n\t\tlet p = listcache.get(type);\n\t\tif (!p) {\n\t\t\tp = dispatch('loadEntityclass', type);\n\t\t\tp = p.then((ec) => search(ec));\n\t\t\tlistcache.set(type, p);\n\t\t\t// console.log('listcache.set', type, listcache.length);\n\t\t} else {\n\t\t\t// console.log('listcache.got', type);\n\t\t}\n\t\treturn p;\n\t},\n\n\tasync loadEntityclass(_, name) {\n\t\tlet ec = await getEntityclassByExternalId(name);\n\t\treturn ec.id;\n\t},\n\n\tloadEntity(_, { id, rev }) {\n\t\tlet key = `${id}#${rev || 'latest'}`;\n\t\tlet e = entitycache.get(key);\n\t\tif (e) return e;\n\t\tlet prom = (rev ? getEntityByIdRev(id, rev) : getEntitiesById([id]))\n\t\t\t.then(list => {\n\t\t\t\tlet entity = 'data' in list ? list : list[0];\n\t\t\t\tif (!entity) throw new Error(`entity ${id} not found`);\n\t\t\t\tif (!rev) {\n\t\t\t\t\tentitycache.set(`${id}#${entity.rev}`, prom);\n\t\t\t\t}\n\t\t\t\treturn entity;\n\t\t\t});\n\t\tentitycache.set(key, prom);\n\t\t// console.log('entitycache.set', id, entitycache.length);\n\t\treturn prom;\n\t},\n\n\tclearCache() {\n\t\tentitycache.reset();\n\t\tlistcache.reset();\n\t},\n\n\tloadEntities(_, { ids, throwIfNotAllFound }) {\n\t\tlet notCached = [];\n\t\tlet cached = [];\n\t\tids.forEach(id => {\n\t\t\tlet e = entitycache.get(id);\n\t\t\tif (e) cached.push(e);\n\t\t\telse notCached.push(id);\n\t\t});\n\t\tlet all = cached.slice(0);\n\t\tif (notCached.length > 0) {\n\t\t\tlet baseProm = getEntitiesById(notCached);\n\t\t\tnotCached.forEach(id => {\n\t\t\t\tlet eProm = baseProm.then(list => {\n\t\t\t\t\tlet e = list.find(e => e.id === id);\n\t\t\t\t\tif (throwIfNotAllFound && !e) throw new Error(`entity with id ${id} not found`);\n\t\t\t\t\treturn e;\n\t\t\t\t});\n\t\t\t\tall.push(eProm);\n\t\t\t\tentitycache.set(id, eProm);\n\t\t\t});\n\t\t}\n\t\treturn Promise.all(all);\n\t},\n\t/* creates or updated an entity. entityclass and attributeset must have same externalId */\n\tasync saveEntry({ state, commit, dispatch }, { entity, newData, type }) {\n\t\tlet ec = await dispatch('loadEntityclass', type);\n\t\tif (!state.attributesets[type]) {\n\t\t\tlet as = await getAttributesetByExternalId(type);\n\t\t\tcommit('setAttributeset', { type, value: as.id });\n\t\t}\n\t\tlet res;\n\t\tif (entity) {\n\t\t\tres = await genericEntityUpdate(entity, newData, state.attributesets[type]);\n\t\t\tlet tl = timelineCache.get(entity.id);\n\t\t\tif (tl) {\n\t\t\t\ttl.push({ rev: res.rev, updated: res.updated });\n\t\t\t}\n\t\t} else {\n\t\t\tres = await genericEntityCreate(ec, state.attributesets[type], newData);\n\t\t}\n\t\treturn res;\n\t},\n\n\tasync loadOffergroups({ dispatch }, { start, limit, sorting, attributeFilter }) {\n\t\tconst type = 'offergroup';\n\t\tlet ec = await dispatch('loadEntityclass', type);\n\t\tlet count = await countEntries(ec, attributeFilter);\n\t\tlet list = await search(ec, attributeFilter, { start, limit }, sorting);\n\t\treturn { count, list };\n\t},\n\n\tasync loadUsers({ dispatch }, { start, limit, sorting, attributeFilter }) {\n\t\tconst type = 'account';\n\t\tlet ec = await dispatch('loadEntityclass', type);\n\t\tlet count = await countEntries(ec, attributeFilter);\n\t\tlet list = await search(ec, attributeFilter, { start, limit }, sorting);\n\t\treturn { count, list };\n\t},\n\n\tasync countEntries({ dispatch }, { attributeFilter, type }) {\n\t\tlet ec = await dispatch('loadEntityclass', type);\n\t\tlet count = await countEntries(ec, attributeFilter);\n\t\treturn count;\n\t},\n\n\tcreateAccount(_, { registrationName, requiresConfirmation=false, userData, staticData }) {\n\t\treturn createAccount({ registrationName, requiresConfirmation, userData, staticData });\n\t},\n\n\tupdateAccount(_, { active, account, userData, staticData, maxUsers }) {\n\t\treturn updateAccount({ active, account, userData, staticData, maxUsers });\n\t},\n\n\tasync setSettings({ commit }, { data, persist }) {\n\t\tif (persist) await setSettings(data);\n\t\tcommit('setSettings', data);\n\t},\n\n\tasync getSettings({ commit, state }) {\n\t\tif (state.settings === null) {\n\t\t\tlet settings = await getSettings();\n\t\t\tcommit('setSettings', settings);\n\t\t}\n\t\treturn state.settings;\n\t},\n\n\tasync getRulesetForKey({ dispatch }, { key }) {\n\t\tlet settings = await dispatch('getSettings');\n\t\tif (!settings.rulesets) return null;\n\t\tlet rs = settings.rulesets.find(e => e.key === key);\n\t\tif (!rs) return null;\n\t\treturn { id: rs.id, rev: rs.rev };\n\t},\n\n\tasync loadEntityTimeline(_, { id }) {\n\t\tlet res = timelineCache.get(id);\n\t\tif (!res) {\n\t\t\tres = await getEntityTimeline(id);\n\t\t\ttimelineCache.set(id, res);\n\t\t}\n\t\treturn res;\n\t},\n\n\tasync checkAgrControlNumberIsFree(_, controlNumber) {\n\t\tlet res = agrControlNumberFreeCache.get(controlNumber);\n\t\tif (typeof res !== 'boolean') {\n\t\t\tlet ec = await getEntityclassByExternalId('account');\n\t\t\tlet attributeFilter = { $and: [{\n\t\t\t\tfield: '/data/staticData/role',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: 'AGR'\n\t\t\t}, {\n\t\t\t\tfield: '/data/userData/controlNumber',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: controlNumber\n\t\t\t}] };\n\t\t\tres = await exists(ec.id, attributeFilter);\n\t\t\tres = !res;\n\t\t\tagrControlNumberFreeCache.set(controlNumber, res);\n\t\t}\n\t\treturn res;\n\t}\n};\n\nconst mutations = {\n\n\tsetAttributeset(state, { type, value }) {\n\t\tstate.attributesets[type] = value;\n\t},\n\n\tsetSettings(state, settings) {\n\t\tstate.settings = settings;\n\t},\n\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","import {\n\tgetEntityclassByExternalId,\n\tgetAttributesetByExternalId,\n\tgenericEntityUpdate,\n\tgenericEntityCreate,\n\tcountEntries,\n\tsearch\n} from '@/repository/system.js';\nimport { get, post } from '@/util/request.js';\n\nconst state = {\n\tentityclass: null,\n\tattributeset: null,\n\tofferEntityclass: null,\n\tofferAttributeset: null\n};\n\nconst getters = {\n};\n\nconst actions = {\n\n\tasync loadEntity(_, { id }) {\n\t\tlet tmp = await post('search/search/ids', { ids: [id] });\n\t\treturn tmp[0];\n\t},\n\tloadEntities(_, { ids }) {\n\t\treturn post('search/search/ids', { ids });\n\t},\n\n\t/* creates or updated an entity. entityclass and attributeset must have same externalId */\n\tasync saveEntry({ state, commit }, { entity, newData }) {\n\t\tif (!state.entityclass) {\n\t\t\tlet ec = await getEntityclassByExternalId('upload');\n\t\t\tcommit('setEntityclass', { value: ec.id });\n\t\t}\n\t\tif (!state.attributeset) {\n\t\t\tlet as = await getAttributesetByExternalId('upload');\n\t\t\tcommit('setAttributeset', { value: as.id });\n\t\t}\n\t\tlet res;\n\t\tif (entity) {\n\t\t\tres = await genericEntityUpdate(entity, newData, state.attributeset);\n\t\t} else {\n\t\t\tres = await genericEntityCreate(state.entityclass, state.attributeset, newData);\n\t\t}\n\t\treturn res;\n\t},\n\n\tasync createAttachment({ dispatch }, { newData, attachment }) {\n\t\tlet entity = await dispatch('saveEntry', { newData });\n\t\treturn post('eav/entity/setattachment', { rev: entity.rev, id: entity.id, attachment });\n\t},\n\n\tsetAttachment(_, { rev, id, attachment }) {\n\t\treturn post('eav/entity/setattachment', { rev, id, attachment });\n\t},\n\n\tgetAttachment(_, { id }) {\n\t\treturn get('eav/entity/getattachment', { id });\n\t},\n\n\tasync loadList({ commit, state }, { start, limit, sorting, attributeFilter }) {\n\t\tif (!state.entityclass) {\n\t\t\tlet ec = await getEntityclassByExternalId('upload');\n\t\t\tcommit('setEntityclass', { value: ec.id });\n\t\t}\n\t\tlet count = await countEntries(state.entityclass, attributeFilter);\n\t\tlet list = await search(state.entityclass, attributeFilter, { start, limit }, sorting);\n\t\treturn { count, list };\n\t},\n\n\tasync deleteEntity({ dispatch }, { id }) {\n\t\tlet ret = await post('eav/entity/delete', { id });\n\t\tlet offers = [];\n\t\tlet errors = [];\n\t\ttry {\n\t\t\toffers = await dispatch('_searchOffersWithUpload', { id });\n\t\t} catch (error) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.log(`attachment deleted, but could not search for offers to remove attachment '${id}'.`, error);\n\t\t\tthrow new Error(`Attachment deleted, but could not search for offers to remove attachment '${id}': ${error}`);\n\t\t}\n\t\tfor (let offer of offers) {\n\t\t\ttry {\n\t\t\t\t// eslint-disable-next-line no-await-in-loop\n\t\t\t\tawait dispatch('_removeAttachmentFromOffer', { id, offer });\n\t\t\t} catch (err) {\n\t\t\t\t// eslint-disable-next-line no-console\n\t\t\t\tconsole.log(`attachment deleted, but could not remove it '${id}' from offer '${offer.id}'.`, err);\n\t\t\t\terrors.push({ offerId: offer.id, error: `${err.name}: ${err.message}` });\n\t\t\t}\n\t\t}\n\t\tif (errors.length) {\n\t\t\tthrow new Error(`Attachment '${id}' deleted, but could not remove it from offer: ${JSON.stringify(errors)}`);\n\t\t}\n\t\treturn ret;\n\t},\n\n\tdeleteLogo(_, { id }) {\n\t\treturn post('eav/entity/delete', { id });\n\t},\n\n\tasync _searchOffersWithUpload({ commit, state }, { id }) {\n\t\tif (!state.offerEntityclass) {\n\t\t\tlet ec = await getEntityclassByExternalId('offer');\n\t\t\tcommit('setOfferEntityclass', { value: ec.id });\n\t\t}\n\t\tlet attributeFilter = {\n\t\t\tfield: '/data/attachment',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: id\n\t\t};\n\t\treturn search(state.offerEntityclass, attributeFilter);\n\t},\n\tasync _removeAttachmentFromOffer({ commit, state }, { id, offer }) {\n\t\tlet newData = JSON.parse(JSON.stringify(offer.data));\n\t\tif (newData.attachment.length > 1) newData.attachment = offer.data.attachment.filter(e => e !== id);\n\t\telse delete newData.attachment;\n\t\tif (!state.offerAttributeset) {\n\t\t\tlet as = await getAttributesetByExternalId('offer');\n\t\t\tcommit('setOfferAttributeset', { value: as.id });\n\t\t}\n\t\tlet res = await genericEntityUpdate(offer, newData, state.offerAttributeset);\n\t\treturn res;\n\t}\n};\n\nconst mutations = {\n\n\tsetEntityclass(state, { value }) {\n\t\tstate.entityclass = value;\n\t},\n\tsetAttributeset(state, { value }) {\n\t\tstate.attributeset = value;\n\t},\n\tsetOfferEntityclass(state, { value }) {\n\t\tstate.offerEntityclass = value;\n\t},\n\tsetOfferAttributeset(state, { value }) {\n\t\tstate.offerAttributeset = value;\n\t}\n\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","const LIMIT = 10; // how many notifications are saved, 0 for no limitation\n\nconst state = {\n\tnotifications: [],\n\tnotificationsToShow: [],\n};\n\nconst getters = {\n\tget: (state) => {\n\t\treturn state.notifications;\n\t},\n\tgetNotShown: (state) => {\n\t\treturn state.notificationsToShow;\n\t},\n};\n\nconst mutations = {\n\tadd(state, notification) {\n\t\tstate.notifications.push(notification);\n\t\tstate.notificationsToShow.push(notification);\n\t\tlet len = state.notifications.length;\n\t\tif (LIMIT && len > LIMIT) {\n\t\t\tstate.notifications = state.notifications.slice(len-LIMIT, len);\n\t\t}\n\t},\n\tshiftToShow() {\n\t\tstate.notificationsToShow = state.notificationsToShow.slice(1);\n\t},\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tmutations,\n};\n","import { get, post } from '@/util/request.js';\nimport { getToken } from '@/util/jwt-cache.js';\n\nexport async function listAccountsForUser() {\n\tlet auth = getToken();\n\tif (!auth) return [];\n\tlet list = await get('auth/domain/listaccounts', null, auth);\n\treturn list;\n}\n\nexport async function registerWithDomainByInvite(inviteId, registrationName, token) {\n\tconst payload = {\n\t\tinviteId,\n\t\tregistrationName,\n\t\tuserData: {},\n\t\ttoken\n\t};\n\tlet { account } = await post('auth/domain/register', payload);\n\treturn account;\n}\n\nexport function refreshToken() {\n\treturn post('auth/account/refreshtoken', null, getToken());\n}\n\nexport function getAccountDetails() {\n\treturn get('auth/account/getaccount', null, getToken());\n}\n\nexport function unregisterAccount(account) {\n\treturn post('auth/account/unregisterwithaccount', { account }, getToken());\n}\n\nexport function updateAccount(data, surpressError) {\n\treturn post('auth/account/updateaccount', data, getToken(), surpressError);\n}\n\nexport async function loginToDomain(token, useAccount) {\n\tlet p = { token };\n\tif (useAccount) p.useAccount = useAccount;\n\ttry {\n\t\treturn await post('auth/domain/login', p);\n\t} catch (e) {\n\t\tif (e.message.includes('unable to choose account') && useAccount) {\n\t\t\treturn loginToDomain(token);\n\t\t} else {\n\t\t\tthrow e;\n\t\t}\n\t}\n}\n","import jwtDecode from 'jwt-decode';\nimport { DOMAIN, KeycloakInfo } from '@/util/env.js';\nimport { setToken } from '@/util/jwt-cache.js';\nimport { loginToDomain } from '@/repository/auth/account.js';\nimport Keycloak from 'keycloak-js';\nimport * as LocalStorage from '@/repository/localStorage.js';\n\nconst keycloak = new Keycloak(KeycloakInfo);\n\nlet initPromise;\nlet refreshTimer;\nlet isInit = false;\n\nconst state = {\n\tmain: {\n\t\ttoken: null,\n\t\texpires: 0,\n\t\taccount: null\n\t},\n\tssoToken: null,\n\tssoRefreshToken: null,\n\tssoParsed: null\n};\n\nconst getters = {\n\n\taccount: (state) => {\n\t\treturn state.main.account;\n\t},\n\n\tisLoggedIn: (state) => {\n\t\tlet ts = ~~(Date.now()/1000);\n\t\treturn state.main.expires > ts\n\t\t\t&& state.main.token !== null;\n\t},\n\n\tcurrentToken: (state) => {\n\t\treturn state.main.token;\n\t},\n\n\thasAccountSelected: (state) => {\n\t\treturn state.main.account !== null;\n\t},\n\n\tgetValidTokenForAccount: (state) => (accountId) => {\n\t\tlet ts = ~~(Date.now()/1000);\n\t\tif (state.main.account === accountId && state.main.expires > ts) {\n\t\t\treturn state.main.token;\n\t\t}\n\t\treturn null;\n\t},\n\n\thasSsoLogin: (state) => {\n\t\treturn state.ssoParsed && state.ssoParsed.exp > Date.now()/1000;\n\t},\n\n\tssoProfileLink: () => keycloak.createAccountUrl(),\n\n\tssoToken: (state) => state.ssoToken,\n\n\tssoUserId: (state) => {\n\t\treturn state.ssoParsed?.sub;\n\t}\n};\n\nconst actions = {\n\n\t/**\n\t * should be called once at the start\n\t **/\n\tasync initApp({ dispatch, commit, state }) {\n\t\tif (!initPromise) {\n\t\t\tlet opts = {\n\t\t\t\tsilentCheckSsoFallback: false,\n\t\t\t\tcheckLoginIframe: false\n\t\t\t};\n\t\t\tif (state.ssoToken && state.ssoRefreshToken) {\n\t\t\t\topts.idToken = opts.token = state.ssoToken;\n\t\t\t\topts.refreshToken = state.ssoRefreshToken;\n\t\t\t}\n\t\t\t// console.log('keycloak init', opts);\n\t\t\tinitPromise = keycloak.init(opts);\n\t\t}\n\t\tlet auth = await initPromise;\n\t\tif (isInit) return;\n\t\tisInit = true;\n\t\tconsole.log('init', auth, keycloak);\n\t\tif (auth) {\n\t\t\tif (keycloak.refreshToken) {\n\t\t\t\ttry {\n\t\t\t\t\tawait keycloak.updateToken(65);\n\t\t\t\t} catch (e) {\n\t\t\t\t\t//refresh token expired\n\t\t\t\t\tconsole.log('refresh failed', e);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\tawait dispatch('authenticate');\n\t\t}\n\t\tif (!refreshTimer) {\n\t\t\trefreshTimer = setInterval(async() => {\n\t\t\t\tif (!keycloak.refreshToken) return;\n\t\t\t\ttry {\n\t\t\t\t\tlet refreshed = await keycloak.updateToken(65);\n\t\t\t\t\tif (refreshed) {\n\t\t\t\t\t\tcommit('setSsoToken', keycloak);\n\t\t\t\t\t\tlet data = await loginToDomain(state.ssoToken, state.main.account);\n\t\t\t\t\t\tcommit('login', data.jwt);\n\t\t\t\t\t}\n\t\t\t\t} catch (e) {\n\t\t\t\t\tconsole.log('refresh token expired', e);\n\t\t\t\t\t//now what?\n\t\t\t\t}\n\t\t\t}, 1000 * 30);\n\t\t}\n\t},\n\n\t/**\n\t * call to log in the user\n\t **/\n\tasync authenticate({ commit, dispatch, state, rootState, rootGetters }) {\n\t\t// console.log('authenticate', keycloak);\n\t\tif (!keycloak.token) {\n\t\t\tlet locale = rootState.base.uiLocale.substr(0, 2);\n\t\t\tlet country = rootGetters['country/currentCountry'];\n\t\t\tconst idpHint = new URL(document.location.href).searchParams.get('idpHint') || country.data.ssoIdpHint;\n\t\t\tlet params = {\n\t\t\t\tredirectUri: document.location.href,\n\t\t\t\tlocale,\n\t\t\t\tidpHint\n\t\t\t};\n\t\t\tlet url = await keycloak.createLoginUrl(params);\n\t\t\twindow.location.href = url;\n\t\t\treturn;\n\t\t}\n\t\tcommit('setSsoToken', keycloak);\n\t\tlet data = await loginToDomain(state.ssoToken, state.main.account);\n\t\tcommit('login', data.jwt);\n\t\tawait dispatch('auth/user/switchToFirstAvailableAccount', null, { root: true });\n\t},\n\n\tasync register({ rootState, rootGetters }) {\n\t\tlet locale = rootState.base.uiLocale.substr(0, 2);\n\t\tlet country = rootGetters['country/currentCountry'];\n\t\tlet params = {\n\t\t\tredirectUri: document.location.href,\n\t\t\tlocale,\n\t\t\tidpHint: country.data.ssoIdpHint\n\t\t};\n\t\tlet url = keycloak.createRegisterUrl(params);\n\t\twindow.location.href = url;\n\t},\n\n\t/**\n\t * call to log out the user\n\t **/\n\tasync logout({ commit }) {\n\t\tcommit('logout');\n\t\tawait keycloak.logout();\n\t},\n\n\t/**\n\t * switch zdb accounts\n\t **/\n\tasync switchAccountAndLogin({ commit, dispatch, getters, state, rootGetters }, accountId) {\n\t\t// errors in this function are never displayed to user? not translated for now\n\t\tif (!accountId) throw new Error('no accountId specified');\n\t\tif (accountId === state.main.account) return;\n\t\tdispatch('redirect/runHook', { trigger: 'afterAccountSwitch' }, { root: true });\n\t\tlet existing = getters.getValidTokenForAccount(accountId);\n\t\tif (existing) {\n\t\t\tcommit('login', existing);\n\t\t} else {\n\t\t\tlet data = await loginToDomain(state.ssoToken, accountId);\n\t\t\tif (!data) throw new Error('Could not switch account.');\n\t\t\tcommit('login', data.jwt);\n\t\t}\n\t\tlet country = rootGetters['country/currentCountry'].id;\n\t\tLocalStorage.setLastUsedAccountId(country, accountId);\n\t\tawait dispatch('auth/user/loadAccountData', null, { root: true });\n\t}\n};\n\nconst mutations = {\n\n\tlogin(state, jwt) {\n\t\t// errors in this function are never displayed to user? not translated for now\n\t\tlet { aud, sub, exp } = jwtDecode(jwt);\n\t\tif (aud !== DOMAIN) {\n\t\t\tthrow new Error(`token expected for ${DOMAIN} but received for ${aud}`);\n\t\t}\n\t\tlet expDate = new Date(exp * 1000);\n\t\tif (expDate < new Date()) {\n\t\t\tthrow new Error('token is expired');\n\t\t}\n\t\tif (!sub) sub = null;\n\t\tstate.main.token = jwt;\n\t\tstate.main.expires = exp;\n\t\tstate.main.account = sub;\n\t\tsetToken(jwt);\n\t},\n\n\tlogout(state) {\n\t\tstate.main.token = null;\n\t\tstate.main.account = null;\n\t\tstate.main.expires = 0;\n\t\tstate.ssoToken = null;\n\t\tstate.ssoParsed = null;\n\t\tsetToken(null);\n\t},\n\n\tsetSsoToken(state, { token, tokenParsed, refreshToken }) {\n\t\tstate.ssoToken = token;\n\t\tstate.ssoParsed = tokenParsed;\n\t\tstate.ssoRefreshToken = refreshToken;\n\t}\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","import { createAccountInvite, unregisterAccount } from '@/repository/auth/accountmanagement.js';\n\nconst state = {\n\n};\n\nconst getters = {\n};\n\nconst actions = {\n\tcreateInvite(_, { accountId }) {\n\t\treturn createAccountInvite({ account: accountId });\n\t},\n\tunregisterAccount(_, { account, ssoUser }) {\n\t\treturn unregisterAccount(account, ssoUser);\n\t}\n};\n\nconst mutations = {\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","import { getAccountDetails, listAccountsForUser, unregisterAccount, updateAccount, registerWithDomainByInvite } from '@/repository/auth/account.js';\nimport { getEntitiesById } from '@/repository/system.js';\nimport { toAccountName } from '@/plugins/filters.js';\nimport { EtrackerCode } from '@/util/env.js';\nimport * as TdbRepo from '@/repository/tdb.js';\nimport * as LocalStorage from '@/repository/localStorage.js';\n\n/*\n * everything for your own current user\n */\n\nconst state = {\n\tdetails: {},\n\tloaded: false,\n\tavailableAccounts: []\n};\n\nconst getters = {\n\tdetails: state => {\n\t\treturn state.details;\n\t},\n\tavailableAccounts: (state, getters, rootState, rootGetters) => {\n\t\tlet isAdmin = rootGetters['country/isAdmin'];\n\t\treturn state.availableAccounts.filter(a => (a.data.registrationOptionName === 'adm' ? isAdmin : !isAdmin));\n\t},\n\taccountName: (state) => {\n\t\treturn toAccountName(state.details);\n\t},\n\tsupData: (state) => {\n\t\treturn state.details?.userData?.supData || [];\n\t},\n\tinsData: (state) => {\n\t\treturn state.details?.userData?.insData || [];\n\t},\n\trole: (state) => {\n\t\treturn state.details?.staticData?.role || 'GUEST';\n\t},\n\tofferAutApproval: (state) => {\n\t\treturn state.details?.staticData?.autApprovalForCountry || null;\n\t},\n\troleSupportsProfile: (state) => (func) => {\n\t\tlet role = state.details?.staticData?.role;\n\t\tif (func === 'logo') return ['SUP'].includes(role);\n\t\tif (func === 'email') return ['ASO', 'AUT', 'INS', 'SUP'].includes(role);\n\t\tif (func === 'animalkindsSold') return ['AGR', 'SUP'].includes(role);\n\t\tif (func === 'locationsOfSale') return ['AGR', 'SUP'].includes(role);\n\t\tif (func === 'confirmedAllLocationsOfSale') return ['AGR'].includes(role);\n\t\tif (func === 'requestFolders') return ['AGR', 'ASO', 'SUP', 'INS', 'AUT'].includes(role);\n\t\treturn false;\n\t},\n\troleSupportsProfileSupData: (state) => {\n\t\tlet role = state.details?.staticData?.role;\n\t\tswitch (role) {\n\t\t\tcase 'AGR':\n\t\t\t\treturn 1;\n\t\t\tcase 'SUP':\n\t\t\t\treturn 20;\n\t\t\tdefault:\n\t\t\t\treturn 0;\n\t\t}\n\t},\n\tisLoaded: (state) => {\n\t\treturn state.loaded;\n\t},\n\temail: (state) => {\n\t\treturn state.details.userData.address?.email;\n\t},\n\thasRole: (state, getters) => (role) => {\n\t\tlet baseRole = getters.role;\n\t\tif (role === 'AGR' && baseRole === role) {\n\t\t\treturn true;\t//don't check for active ins. this is mainly used for nav menu, and inactive agr can still see requests\n\t\t}\n\t\tif (baseRole === role) return true;\n\t\tif (role === 'SUP' && baseRole === 'AGR') {\n\t\t\treturn getters.isActiveSup;\n\t\t}\n\t\treturn false;\n\t},\n\tisDeactivatedAgr: (state, getters) => {\n\t\treturn getters.role === 'AGR' && (state.details?.userData?.insData?.filter(e => !e.deactivatedOn).length || 0) === 0;\n\t},\n\tisActiveSup: (state, getters) => {\n\t\treturn ['AGR', 'SUP'].includes(getters.role) && getters.hasAcceptedTos;\n\t},\n\tisActiveAgr: (state, getters) => {\n\t\tlet insData = state.details?.userData?.insData;\n\t\treturn getters.role === 'AGR' && insData && insData.filter(e => !e.deactivatedOn).length > 0;\n\t},\n\thasActiveAso: (state, getters) => {\n\t\tlet asoData = state.details?.userData?.asoData;\n\t\treturn getters.role === 'AGR' && asoData && asoData.filter(e => !e.deactivatedOn).length > 0;\n\t},\n\tsupHasAllGeoPos: (state) => {\n\t\tlet account = state.details;\n\t\tif (!account) return false;\n\t\tfor (let supData of account.userData.supData) {\n\t\t\tfor (let los of supData.locationsOfSale) {\n\t\t\t\tlet pos = los.address.geoPosition;\n\t\t\t\tif (!(pos && pos.lat && pos.lon)) return false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t},\n\tsupHasAllMailOrPhone: () => {\n\t\tlet account = state.details;\n\t\tif (!account) return false;\n\t\tlet atLeastOneLos = false;\n\t\tfor (let supData of account.userData.supData) {\n\t\t\tfor (let los of supData.locationsOfSale) {\n\t\t\t\tif (!(los.address.phone || los.address.email)) return false;\n\t\t\t\tatLeastOneLos = true;\n\t\t\t}\n\t\t}\n\t\treturn atLeastOneLos;\n\t},\n\tsupIsReadyToSell: (state, getters) => {\n\t\treturn getters.supHasAllGeoPos && getters.supHasAllMailOrPhone;\n\t},\n\thasAcceptedTos: (state) => {\n\t\treturn !!state.details?.userData?.supExtra?.tosAcceptedOn;\n\t},\n\tactiveInsOptions: (state) => {\n\t\tlet insData = state.details?.userData?.insData;\n\t\tif (!insData) return [];\n\t\treturn insData.filter(e => !e.deactivatedOn);\n\t},\n\tactiveAsoOptions: (state) => {\n\t\tlet asoData = state.details?.userData?.asoData;\n\t\tif (!asoData) return [];\n\t\treturn asoData.filter(e => !e.deactivatedOn);\n\t}\n};\n\nconst actions = {\n\n\tasync loadAccountData({ commit, rootGetters }) {\n\t\tlet accountDetails = {};\n\t\tif (rootGetters['auth/token/account']) {\n\t\t\taccountDetails = await getAccountDetails();\n\t\t}\n\t\tcommit('setDetails', accountDetails);\n\t},\n\n\tasync loadAvailableAccounts({ commit }) {\n\t\tlet list = await listAccountsForUser();\n\t\tif (list.length === 0) return;\n\t\tlet entities = await getEntitiesById(list);\n\t\tcommit('setAvailableAccounts', entities);\n\t},\n\n\tasync switchToFirstAvailableAccount({ dispatch, getters, rootGetters }) {\n\t\tawait dispatch('loadAvailableAccounts');\n\t\tif (getters.availableAccounts.length > 0) {\n\t\t\tlet country = rootGetters['country/currentCountry']?.id;\n\t\t\tlet lastAccount = LocalStorage.getLastUsedAccountId(country);\n\t\t\tif (rootGetters['auth/token/account'] && getters.availableAccounts.find(a => a.id === rootGetters['auth/token/account'])) {\n\t\t\t\tawait dispatch('loadAccountData');\n\t\t\t} else if (lastAccount && getters.availableAccounts.find(a => a.id === lastAccount)) {\n\t\t\t\tawait dispatch('auth/token/switchAccountAndLogin', lastAccount, { root: true });\n\t\t\t} else {\n\t\t\t\tawait dispatch('auth/token/switchAccountAndLogin', getters.availableAccounts[0].id, { root: true });\n\t\t\t}\n\t\t\tif (typeof _etracker === 'object' && EtrackerCode) {\n\t\t\t\t// eslint-disable-next-line no-undef\n\t\t\t\t_etracker.sendEvent(new et_UserDefinedEvent('role', 'login', '', getters.role));\n\t\t\t}\n\t\t}\n\t},\n\n\tasync unregisterFromAccount({ rootGetters, dispatch }, account) {\n\t\tif (!account) account = rootGetters['auth/token/account'];\n\t\tif (!account) throw new Error('no account is selected');\n\t\tawait unregisterAccount(account);\n\t\t// commit('auth/token/logout', null, { root: true });\n\t\tdispatch('switchToFirstAvailableAccount');\n\t},\n\n\tasync updateUserData({ state, commit }, { userData, surpressError }) {\n\t\tlet accountData = await updateAccount(userData, surpressError);\n\t\tlet details = JSON.parse(JSON.stringify(state.details));\n\t\tdetails.userData = accountData.userData;\n\t\tcommit('setDetails', details);\n\t},\n\n\tasync updateUserGeoPos({ state, dispatch }, { userId, countryId, locationOfSale, geoPosition }) {\n\t\tif (userId) {\n\t\t\tawait TdbRepo.updateGeoPosition({ userId, countryId, locationOfSale, geoPosition });\n\t\t\tawait dispatch('admin/clearCache', null, { root: true });\n\t\t\tawait dispatch('request/main/loadAgrData', null, { root: true });\n\t\t} else { // add to current user\n\t\t\tlet userData = JSON.parse(JSON.stringify(state.details.userData));\n\t\t\tuserData.supData.find(e => e.country === countryId).locationsOfSale\n\t\t\t\t.find(el => el.id === locationOfSale).address.geoPosition = geoPosition;\n\t\t\tawait dispatch('updateUserData', { userData });\n\t\t\tawait dispatch('request/main/init', null, { root: true });\n\n\t\t}\n\t},\n\n\tasync registerWithInvite({ dispatch, rootState }, { inviteId, registrationName }) {\n\t\tawait dispatch('auth/token/initApp', null, { root: true });\n\t\tlet token = rootState.auth.token.ssoToken;\n\t\tlet accountId = await registerWithDomainByInvite(inviteId, registrationName, token);\n\t\tawait dispatch('auth/token/switchAccountAndLogin', accountId, { root: true });\n\t}\n};\n\nconst mutations = {\n\n\tsetDetails(state, details) {\n\t\tstate.details = details;\n\t\tstate.loaded = true;\n\t},\n\n\tsetAsoData(state, asoData) {\n\t\tstate.details.userData.asoData = asoData;\n\t},\n\n\tsetAvailableAccounts(state, list) {\n\t\tstate.availableAccounts = list;\n\t}\n\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","import token from './auth/token.js';\nimport account from './auth/account.js';\nimport user from './auth/user.js';\n\nexport default {\n\tnamespaced: true,\n\tmodules: {\n\t\ttoken,\n\t\taccount,\n\t\tuser\n\t}\n};\n","import { search, getEntityclassByExternalId } from '@/repository/system.js';\nimport * as Common from 'tdbcommon';\n\nconst state = {\n\n\tentityclass: null,\n\tcurrentCountry: null,\n\tcountrySelection: [],\n\turlPrefix: '/',\n\tlist: []\n\n};\n\nfunction findCountryByUrl(countries) {\n\tlet url = document.location.host + document.location.pathname;\n\t// console.log('find domain for ', url);\n\tfor (let country of countries) {\n\t\tif (!country.data.domains) continue;\n\t\tfor (let domain of country.data.domains) {\n\t\t\tif (url.substr(0, domain.length) === domain) {\n\t\t\t\treturn { country, domain };\n\t\t\t}\n\t\t}\n\t}\n\treturn {};\n}\n\nconst getters = {\n\n\tisAdmin: (state) => {\n\t\treturn state.currentCountry?.data.isAdmin;\n\t},\n\n\tcountryLabels: (state) => {\n\t\treturn state.currentCountry ? state.currentCountry.data.labels : [];\n\t},\n\n\tisCountrySelected: (state) => {\n\t\treturn !!state.currentCountry;\n\t},\n\n\tcountriesForSelection: (state) => {\n\t\treturn state.countrySelection;\n\t},\n\n\tcurrentCountry: (state) => {\n\t\treturn state.currentCountry;\n\t},\n\n\turlPrefix: (state) => {\n\t\treturn state.urlPrefix;\n\t},\n\n\tusesRequestSystem: state => {\n\t\treturn state.currentCountry?.data.usesRequestSystem;\n\t},\n\n\tusesSso: state => {\n\t\treturn state.currentCountry?.data.registrationProcedure !== 'apiagencybiofr';\n\t},\n\n\tcountriesForOptions: state => {\n\t\treturn state.list.filter(c => !c.data.isAdmin);\n\t},\n\n\tbyId: state => id => {\n\t\treturn state.list.find(c => c.id === id);\n\t}\n};\n\nconst actions = {\n\n\tasync loadCurrentCountry({ commit, state, dispatch, rootState }) {\n\t\tawait dispatch('loadEntityclass');\n\t\tlet filter = {\n\t\t\t$or: [{\n\t\t\t\tfield: '/data/enabledForWebsite',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: true\n\t\t\t}, {\n\t\t\t\tfield: '/data/isAdmin',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: true\n\t\t\t}]\n\t\t};\n\t\tlet res = await search(state.entityclass, filter);\n\t\tlet { country, domain } = findCountryByUrl(res);\n\t\tif (!country && res.length === 1) {\n\t\t\tcountry = res[0];\n\t\t\tdomain = country.data.domains[0];\n\t\t}\n\t\tif (country) {\n\t\t\tif (country.data.isAdmin) {\n\t\t\t\tcountry.data.languages = Common.Config.Languages.List;\n\t\t\t}\n\t\t\tlet url = new URL(`http://${domain}`);\n\t\t\t// console.log('setting current domain', url);\n\t\t\tcommit('setCountry', { country, prefix: url.pathname });\n\t\t\tif (country.data.languages.length === 1 ||\n\t\t\t\tcountry.data.languages.length > 0 && !country.data.languages.includes(rootState.base.uiLocale)) {\n\t\t\t\tcommit('base/setUiLocale', country.data.languages[0], { root: true });\n\t\t\t}\n\t\t}\n\t},\n\n\tasync loadCountrySelection({ commit, state, dispatch }) {\n\t\tawait dispatch('loadEntityclass');\n\t\tlet filter = {\n\t\t\tfield: '/data/enabledForWebsite',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: true\n\t\t};\n\t\tlet res = await search(state.entityclass, filter);\n\t\tcommit('setCountries', res);\n\t},\n\n\tasync init({ state, dispatch }) {\n\t\tawait dispatch('loadCurrentCountry');\n\t\tif (!state.currentCountry) {\n\t\t\tawait dispatch('loadCountrySelection');\n\t\t}\n\t},\n\n\tasync loadEntityclass({ state, commit }) {\n\t\tif (!state.entityclass) {\n\t\t\tlet ec = await getEntityclassByExternalId('country');\n\t\t\tcommit('setEntityclass', ec);\n\t\t}\n\t},\n\n\tasync loadAll({ state, dispatch, commit }) {\n\t\tif (state.list.length > 0) return;\n\t\tawait dispatch('loadCurrentCountry');\n\t\tlet res = await search(state.entityclass);\n\t\tcommit('setAll', res);\n\t}\n\n};\n\nconst mutations = {\n\n\tsetEntityclass(state, { id }) {\n\t\tstate.entityclass = id;\n\t},\n\n\tsetCountry(state, { country, prefix }) {\n\t\tstate.currentCountry = country;\n\t\tstate.urlPrefix = prefix;\n\t},\n\n\tsetCountries(state, list) {\n\t\tstate.countrySelection = list;\n\t},\n\n\tsetAll(state, list) {\n\t\tstate.list = list;\n\t},\n\n\taddAll(state, list) {\n\t\tlist.forEach(c => {\n\t\t\tif (!state.list.find(e => e.id === c.id)) {\n\t\t\t\tstate.list.push(c);\n\t\t\t}\n\t\t});\n\t}\n\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","import { search, getEntityclassByExternalId, getAttributesetByExternalId,\n\tgenericEntityCreate, genericEntityUpdate, countEntries } from '@/repository/system.js';\nimport { notifyMissingOffergroup } from '@/repository/tdb.js';\nimport store from '@/store/index.js';\n\nconst state = {\n\n\tentityclass: '',\n\tattributeset: '',\n\tactivtyConfirmedFor: []\n\n};\n\nconst getters = {\n\n\tcountryFilter: (state, getters) => (country) => {\n\t\treturn country.data.enabledForWebsite &&\n\t\t\tgetters.supDataCountries.includes(country.id);\n\t},\n\n\tsupDataCountries: (state, getters) => {\n\t\treturn getters.supData.map(data => data.country);\n\t},\n\n\tsupData: (state, getters, rootState, rootGetters) => {\n\t\tlet sup = rootGetters['auth/user/supData'];\n\t\treturn sup || [];\n\t},\n\n};\n\nconst actions = {\n\n\tasync loadOffers({ commit, state }, { start, limit, sorting, attributeFilter }) {\n\t\tconst type = 'offer';\n\t\tif (!state.entityclass) {\n\t\t\tlet ec = await getEntityclassByExternalId(type);\n\t\t\tcommit('setEntityclass', { value: ec.id });\n\t\t}\n\t\tlet count = await countEntries(state.entityclass, attributeFilter);\n\t\tlet list = await search(state.entityclass, attributeFilter, { start, limit }, sorting);\n\t\treturn { count, list };\n\t},\n\n\tasync saveOffer({ rootState, state, commit, dispatch }, { entity, newData, updateActivity = true }) {\n\t\tconst type = 'offer';\n\t\tif (!state.entityclass) {\n\t\t\tlet ec = await getEntityclassByExternalId(type);\n\t\t\tcommit('setEntityclass', { value: ec.id });\n\t\t}\n\t\tif (!state.attributeset) {\n\t\t\tlet as = await getAttributesetByExternalId(type);\n\t\t\tcommit('setAttributeset', {value: as.id });\n\t\t}\n\t\tif (!newData.autApproval && store.getters['country/currentCountry'].data.offerAutApproval) {\n\t\t\tnewData.autApproval = 'pending';\n\t\t}\n\t\tif (!entity) {\n\t\t\tnewData.history = [];\n\t\t}\n\t\tif (!newData.indexData) {\n\t\t\tnewData.indexData = {\n\t\t\t\tageCategory: [],\n\t\t\t\tcategory1: []\n\t\t\t};\n\t\t}\n\t\tlet res;\n\t\tif (entity) {\n\t\t\tres = await genericEntityUpdate(entity, newData, state.attributeset);\n\t\t} else {\n\t\t\tres = await genericEntityCreate(state.entityclass, state.attributeset, newData);\n\t\t}\n\t\tif (updateActivity) await dispatch('updateActivity', { countryId: newData.country });\n\t\tif (res.data.status !== 'archived' &&\n\t\t['AGR', 'SUP'].includes(rootState.auth.user.details.staticData.role)) {\n\t\t\tlet { animalkind, country } = res.data;\n\t\t\tawait dispatch('updateAnimalkindsSold', { animalkind, country });\n\t\t}\n\t\treturn res;\n\t},\n\n\tasync updateActivity({ dispatch, rootState, state, commit }, { countryId }) {\n\t\tif (state.activtyConfirmedFor.includes(countryId)) return;\n\t\tlet now = new Date().toJSON();\n\t\tlet userData = JSON.parse(JSON.stringify(rootState.auth.user.details.userData));\n\t\tlet e = userData.supData.find(r => r.country === countryId);\n\t\te.activityConfirmedOn = now;\n\t\te.activityWarningsMailsSent = 0;\n\t\tawait dispatch('auth/user/updateUserData', { userData }, { root: true });\n\t\tcommit('setActivityConfirmedFor', countryId);\n\t},\n\n\tasync updateAnimalkindsSold({ dispatch, rootState }, { animalkind, country }) {\n\t\tlet userData = JSON.parse(JSON.stringify(rootState.auth.user.details.userData));\n\t\tlet e = userData.supData.find(r => r.country === country);\n\t\tif (!e.animalkindsSold || !e.animalkindsSold.includes(animalkind)) {\n\t\t\t// eslint-disable-next-line no-negated-condition\n\t\t\tif (!e.animalkindsSold) e.animalkindsSold = [animalkind];\n\t\t\telse e.animalkindsSold.push(animalkind);\n\t\t\tawait dispatch('auth/user/updateUserData', { userData }, { root: true });\n\t\t}\n\t},\n\n\tnotifyMissingOffergroup(_, { name, animalkind }) {\n\t\treturn notifyMissingOffergroup(name, animalkind);\n\t}\n\n\n};\n\nconst mutations = {\n\n\tsetEntityclass(state, { value }) {\n\t\tstate.entityclass = value;\n\t},\n\tsetAttributeset(state, { value }) {\n\t\tstate.attributeset = value;\n\t},\n\tsetActivityConfirmedFor(state, countryId) {\n\t\tstate.activtyConfirmedFor.push(countryId);\n\t}\n\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","import { search, getEntityclassByExternalId, getEntityByIdDate } from '@/repository/system.js';\nimport { cachedSearch, runAggregateQuery } from '@/repository/search.js';\nimport { inputTypeMap } from '@/util/form/offer-field.js';\nimport EventBus from '@/util/eventbus.js';\nimport moment from 'moment';\nimport { toLocale } from '@/plugins/filters.js';\nimport Vue from 'vue';\n\nconst state = {\n\tmodus: 'default',\n\tspotMarketSwitch: false,\n\trequestMode: false,\n\tfilterExport: false,\n\tanimalmenus: [],\n\toffergroupOptions: [],\n\tanimalusageOptions: [],\n\tanimalusagePool: [],\n\tanimalkindOptions: null,\n\tageCategoryOptions: null,\n\tcategory1Options: [],\n\tcategory2Options: null,\n\tasoOptions: [],\n\trequestOptionsFilter: null,\n\tdynamicFields: [],\n\tdefaultLocationGeoRadius: 200,\n\tgeoRadiusByRegion: {},\n\tfilter: {\n\t\tanimalkind: null,\n\t\tanimalusage: [],\n\t\tlocation: null,\n\t\tlocationGeoRadius: 200,\n\t\toffergroup: null,\n\t\tofferspec: null,\n\t\tgender: null,\n\t\tageCategory: null,\n\t\tcategory1: [],\n\t\tamount: null,\n\t\tamountComparison: null,\n\t\taso: [],\n\t\tstatusWeekly: null,\n\t\tshowUnavailable: false,\n\t\tcategory2: null,\n\t\thistory: null,\n\t\thistoryTill: null,\n\t\tdynamic: []\n\t},\n\tfilterVisible: {},\n\tfilterMandatory: {},\n\tofferListGrouped: [],\n\tofferGroupsOpen: [],\n\tcalendarSettings: {},\n\tloaded: false,\n\tamountComparisonOptions: [{\n\t\tkey: 'gte',\n\t\tlabel: '>',\n\t\tlabelLong: '>',\n\t}, {\n\t\tkey: 'lte',\n\t\tlabel: '<',\n\t\tlabelLong: '<',\n\t}, {\n\t\tkey: 'eq',\n\t\tlabel: '=',\n\t\tlabelLong: '=',\n\t}],\n\tdisplayHints: {},\n\tallowTransnationalSearch: false\n};\n\nconst getters = {\n\n\tanimalmenus: (state, _, rootState) => {\n\t\t// todo: do not load every animalmenu, but only the ones from currentcountry; check if countryswitch still works with it tho\n\t\treturn state.animalmenus.filter(e => e.data.countries.includes(rootState.country.currentCountry.id));\n\t},\n\n\tanimalkindOptions: (state) => {\n\t\treturn state.animalkindOptions || [];\n\t},\n\n\tanimalusageOptions: (state) => {\n\t\treturn state.animalusageOptions || [];\n\t},\n\n\toffergroupOptions: (state) => {\n\t\treturn state.offergroupOptions || [];\n\t},\n\n\toffergroupSpecOptions: (state, getters, rootState, rootGetters) => {\n\t\tif (!state.filter.offergroup) return [];\n\t\tlet countryId = rootGetters['country/currentCountry'].id;\n\t\treturn state.filter.offergroup.data.offerSpecifications.filter(e => e.activeInCountries.includes(countryId)) || [];\n\t},\n\n\tageCategoryOptions: (state) => {\n\t\treturn state.ageCategoryOptions || [];\n\t},\n\n\tcategory1Options: (state) => {\n\t\treturn state.category1Options || [];\n\t},\n\n\tcategory2Options: (state) => {\n\t\treturn state.category2Options || [];\n\t},\n\n\tasoOptions: (state) => {\n\t\treturn state.asoOptions || [];\n\t},\n\n\tofferGroupKeys: (state) => {\n\t\tif (!state.loaded) return [];\n\t\tlet base = new Set(Object.keys(state.offerListGrouped));\n\t\tif (state.requestMode) {\n\t\t\tif (state.filter.offergroup) {\n\t\t\t\tbase.add(state.filter.offergroup.id);\n\t\t\t} else {\n\t\t\t\tstate.offergroupOptions.forEach(e => {\n\t\t\t\t\tbase.add(e.id);\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\treturn Array.from(base.values());\n\t},\n\n\tisOfferGroupOpen: (state) => (groupId) => {\n\t\treturn state.offerGroupsOpen.includes(groupId);\n\t},\n\n\toffersFromOpenGroups: (state, getters) => {\n\t\treturn Object.entries(state.offerListGrouped)\n\t\t\t.filter((e) => getters.isOfferGroupOpen(e[0]))\n\t\t\t.map(e => e[1].offers)\n\t\t\t.flat();\n\t},\n\n\tusesPoultrySystem: (state, _, rootState) => {\n\t\tif (!rootState.country || !state.filter.animalkind) return null;\n\t\tlet { animalkindsUsingPoultrySystem } = rootState.country.currentCountry.data;\n\t\treturn animalkindsUsingPoultrySystem.includes(state.filter.animalkind);\n\t},\n\n\tallowTransnationalSearch: (state) => {\n\t\treturn state.allowTransnationalSearch;\n\t},\n\n\tstartOfIsoWeek() {\n\t\treturn moment().startOf('isoWeek').format('YYYY-MM-DD');\n\t},\n\n\tdynamicFieldValue: (state) => (fieldId) => {\n\t\tlet entry = state.filter.dynamic.find(e => e.id === fieldId);\n\t\treturn entry ? entry.value : null;\n\t},\n\n\tisFilterVisible: (state) => (fieldId) => {\n\t\tif (fieldId in state.filterVisible) return state.filterVisible[fieldId];\n\t\tif (state.filterVisible.dynamic && fieldId in state.filterVisible.dynamic) return state.filterVisible.dynamic[fieldId];\n\t\treturn false;\n\t},\n\n\tisFilterMandatory: (state) => (fieldId) => {\n\t\tif (fieldId in state.filterMandatory) return state.filterMandatory[fieldId];\n\t\tif (state.filterMandatory.dynamic && fieldId in state.filterMandatory.dynamic) return state.filterMandatory.dynamic[fieldId];\n\t\treturn false;\n\t},\n\n\tgetCalendarMin: state => {\n\t\tlet cat2 = state.filter.category2;\n\t\tif (cat2 && cat2.id in state.calendarSettings && 'min' in state.calendarSettings[cat2.id]) {\n\t\t\treturn state.calendarSettings[cat2.id].min;\n\t\t}\n\t\tlet min;\n\t\tlet check = (cat1) => {\n\t\t\tif (!(cat1.id in state.calendarSettings) || !('min' in state.calendarSettings[cat1.id])) return;\n\t\t\tlet num = state.calendarSettings[cat1.id].min;\n\t\t\tif (isNaN(min)) {\n\t\t\t\tmin = num;\n\t\t\t} else {\n\t\t\t\tmin = Math.min(min, num);\n\t\t\t}\n\t\t};\n\t\tif (Array.isArray(state.filter.category1)) {\n\t\t\tstate.filter.category1.forEach(check);\n\t\t} else if (state.filter.category1) {\n\t\t\tcheck(state.filter.category1);\n\t\t}\n\t\treturn min;\n\t},\n\n\tgetCalendarMax: state => {\n\t\tlet cat2 = state.filter.category2;\n\t\tif (cat2 && cat2.id in state.calendarSettings && 'max' in state.calendarSettings[cat2.id]) {\n\t\t\treturn state.calendarSettings[cat2.id].max;\n\t\t}\n\t\tlet max;\n\t\tlet check = (cat1) => {\n\t\t\tif (!(cat1.id in state.calendarSettings) || !('max' in state.calendarSettings[cat1.id])) return;\n\t\t\tlet num = state.calendarSettings[cat1.id].max;\n\t\t\tif (isNaN(max)) {\n\t\t\t\tmax = num;\n\t\t\t} else {\n\t\t\t\tmax = Math.max(max, num);\n\t\t\t}\n\t\t};\n\t\tif (Array.isArray(state.filter.category1)) {\n\t\t\tstate.filter.category1.forEach(check);\n\t\t} else if (state.filter.category1) {\n\t\t\tcheck(state.filter.category1);\n\t\t}\n\t\treturn max;\n\t},\n\n\tallMandatoryFiltersSet: (state, getters) => {\n\t\tfor (let key of Object.keys(state.filterMandatory)) {\n\t\t\tif (getters.isFilterMandatory(key)) {\n\t\t\t\tif (key === 'dynamic') {\n\t\t\t\t\tfor (let fieldId of Object.keys(state.filterMandatory.dynamic)) {\n\t\t\t\t\t\tlet value = getters.dynamicFieldValue(fieldId);\n\t\t\t\t\t\tif (!value || Array.isArray(value) && value.length === 0) return false;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (key === 'calendarweek') key = 'statusWeekly';\n\t\t\t\t\telse if (key === 'agegroup') key = 'ageCategory';\n\t\t\t\t\tlet value = state.filter[key];\n\t\t\t\t\tif (!value || Array.isArray(value) && value.length === 0) return false;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t},\n\n\tgeoRadius: (state, getters, rootState, rootGetters) => {\n\t\tif (state.modus !== 'request') return state.filter.locationGeoRadius;\n\t\tlet region = rootGetters['request/main/getRegion'];\n\t\treturn region && region in state.geoRadiusByRegion ? state.geoRadiusByRegion[region].requestGeoRadius : state.defaultLocationGeoRadius;\n\t},\n\n\tattributeFilter: (state, getters, rootState) => {\n\t\tif (!state.filter.animalkind) throw new Error('animalkind not set');\n\t\tlet $and = [];\n\t\tif (!getters.allowTransnationalSearch || getters.allowTransnationalSearch && !state.filter.location) {\n\t\t\t$and.push({\n\t\t\t\tfield: '/data/country',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: rootState.country.currentCountry.id\n\t\t\t});\n\t\t}\n\t\tif (state.modus === 'poultry-spot') {\n\t\t\t$and.push({\n\t\t\t\tfield: '/data/spotMarket',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: true\n\t\t\t});\n\t\t} else {\n\t\t\t$and.push({\n\t\t\t\t$or: [{\n\t\t\t\t\tfield: '/data/spotMarket',\n\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\tvalue: false,\n\t\t\t\t}, {\n\t\t\t\t\t$not: {\n\t\t\t\t\t\tfield: '/data',\n\t\t\t\t\t\tcomparison: 'exists',\n\t\t\t\t\t\tvalue: 'spotMarket',\n\t\t\t\t\t},\n\t\t\t\t}],\n\t\t\t});\n\t\t}\n\t\t$and.push({\n\t\t\tfield: '/data/animalkind',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: state.filter.animalkind\n\t\t});\n\t\tif (state.filter.animalusage) {\n\t\t\tif (Array.isArray(state.filter.animalusage)) {\n\t\t\t\tlet $or = state.filter.animalusage.map(e => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tfield: '/data/animalusage',\n\t\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\t\tvalue: e.id\n\t\t\t\t\t};\n\t\t\t\t});\n\t\t\t\t$and.push({ $or });\n\t\t\t} else {\n\t\t\t\t$and.push({\n\t\t\t\t\tfield: '/data/animalusage',\n\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\tvalue: state.filter.animalusage.id\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\tif (state.filter.location && state.filter.location.geoPosition && getters.geoRadius) {\n\t\t\t$and.push({\n\t\t\t\tfield: '/data/geoPosition',\n\t\t\t\tcomparison: 'geoRadius',\n\t\t\t\tvalue: {\n\t\t\t\t\tdistance: `${getters.geoRadius}km`,\n\t\t\t\t\tlocation: state.filter.location.geoPosition,\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\t\tif (state.filter.offergroup) {\n\t\t\t$and.push({\n\t\t\t\tfield: '/data/offergroup',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: state.filter.offergroup.id\n\t\t\t});\n\t\t}\n\t\tif (state.filter.offerspec) {\n\t\t\t$and.push({\n\t\t\t\tfield: '/data/offerspecification',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: state.filter.offerspec.id,\n\t\t\t});\n\t\t}\n\t\tif (state.filter.gender) {\n\t\t\t$and.push({\n\t\t\t\tfield: '/data/gender',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: state.filter.gender\n\t\t\t});\n\t\t}\n\t\tif (state.filter.ageCategory) {\n\t\t\t$and.push({\n\t\t\t\tfield: '/data/indexData/ageCategory',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: state.filter.ageCategory.id,\n\t\t\t});\n\t\t}\n\t\tif (state.filter.category1 && (!Array.isArray(state.filter.category1) || state.filter.category1.length > 0)) {\n\t\t\tlet val = Array.isArray(state.filter.category1) ? state.filter.category1 : [state.filter.category1];\n\t\t\tlet $or = val.map(e => {\n\t\t\t\treturn {\n\t\t\t\t\tfield: '/data/indexData/category1',\n\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\tvalue: e.id,\n\t\t\t\t};\n\t\t\t});\n\t\t\tif ($or.length) $and.push({ $or });\n\t\t}\n\t\tif (state.filter.amount && state.filter.amount > 0 && state.filter.amountComparison && (!state.requestMode || state.filterExport)) {\n\t\t\t$and.push({\n\t\t\t\tfield: '/data/amount',\n\t\t\t\tcomparison: state.filter.amountComparison.key,\n\t\t\t\tvalue: parseInt(state.filter.amount),\n\t\t\t});\n\t\t}\n\t\tif (state.filter.history) {\n\t\t\tif (state.filter.historyTill) {\n\t\t\t\t$and.push({\n\t\t\t\t\t$nested: {\n\t\t\t\t\t\tpath: '/data/history',\n\t\t\t\t\t\tmatch: {\n\t\t\t\t\t\t\t$or: [{\n\t\t\t\t\t\t\t\t$and: [{\n\t\t\t\t\t\t\t\t\tfield: '/data/history/begin',\n\t\t\t\t\t\t\t\t\tcomparison: 'lte',\n\t\t\t\t\t\t\t\t\tvalue: state.filter.historyTill,\n\t\t\t\t\t\t\t\t}, {\n\t\t\t\t\t\t\t\t\tfield: '/data/history/end',\n\t\t\t\t\t\t\t\t\tcomparison: 'gte',\n\t\t\t\t\t\t\t\t\tvalue: state.filter.history,\n\t\t\t\t\t\t\t\t}],\n\t\t\t\t\t\t\t}, {\n\t\t\t\t\t\t\t\t$and: [{\n\t\t\t\t\t\t\t\t\tfield: '/data/history/begin',\n\t\t\t\t\t\t\t\t\tcomparison: 'lte',\n\t\t\t\t\t\t\t\t\tvalue: state.filter.historyTill,\n\t\t\t\t\t\t\t\t}, {\n\t\t\t\t\t\t\t\t\t$not: {\n\t\t\t\t\t\t\t\t\t\tfield: '/data/history',\n\t\t\t\t\t\t\t\t\t\tcomparison: 'exists',\n\t\t\t\t\t\t\t\t\t\tvalue: 'end',\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t}],\n\t\t\t\t\t\t\t}],\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\t$and.push({\n\t\t\t\t\t$nested: {\n\t\t\t\t\t\tpath: '/data/history',\n\t\t\t\t\t\tmatch: {\n\t\t\t\t\t\t\t$or: [{\n\t\t\t\t\t\t\t\t$and: [{\n\t\t\t\t\t\t\t\t\tfield: '/data/history/begin',\n\t\t\t\t\t\t\t\t\tcomparison: 'lte',\n\t\t\t\t\t\t\t\t\tvalue: state.filter.history,\n\t\t\t\t\t\t\t\t}, {\n\t\t\t\t\t\t\t\t\tfield: '/data/history/end',\n\t\t\t\t\t\t\t\t\tcomparison: 'gte',\n\t\t\t\t\t\t\t\t\tvalue: state.filter.history,\n\t\t\t\t\t\t\t\t}],\n\t\t\t\t\t\t\t}, {\n\t\t\t\t\t\t\t\t$and: [{\n\t\t\t\t\t\t\t\t\tfield: '/data/history/begin',\n\t\t\t\t\t\t\t\t\tcomparison: 'lte',\n\t\t\t\t\t\t\t\t\tvalue: state.filter.history,\n\t\t\t\t\t\t\t\t}, {\n\t\t\t\t\t\t\t\t\t$not: {\n\t\t\t\t\t\t\t\t\t\tfield: '/data/history',\n\t\t\t\t\t\t\t\t\t\tcomparison: 'exists',\n\t\t\t\t\t\t\t\t\t\tvalue: 'end',\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t}],\n\t\t\t\t\t\t\t}],\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t}\n\t\t} else if (state.filter.statusWeekly) {\n\t\t\tif (getters.isFilterVisible('calendarweek')) {\n\t\t\t\tconst $or = [];\n\t\t\t\tlet add = (wk) => {\n\t\t\t\t\t$or.push({\n\t\t\t\t\t\tfield: '/data/statusWeekly/week',\n\t\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\t\tvalue: wk,\n\t\t\t\t\t});\n\t\t\t\t};\n\t\t\t\tadd(state.filter.statusWeekly);\t//the chosen week must always be first for request-init\n\t\t\t\tif (state.calendarSettings.weeksBefore) {\n\t\t\t\t\tlet base = new Date(state.filter.statusWeekly);\n\t\t\t\t\tfor (let i=1; i<=state.calendarSettings.weeksBefore; i++) {\n\t\t\t\t\t\tlet d = new Date(base.getTime());\n\t\t\t\t\t\td.setDate(d.getDate()-(i*7));\n\t\t\t\t\t\tadd(d.toJSON().substr(0, 10));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (state.calendarSettings.weeksAfter) {\n\t\t\t\t\tlet base = new Date(state.filter.statusWeekly);\n\t\t\t\t\tfor (let i=1; i<=state.calendarSettings.weeksAfter; i++) {\n\t\t\t\t\t\tlet d = new Date(base.getTime());\n\t\t\t\t\t\td.setDate(d.getDate()+(i*7));\n\t\t\t\t\t\tadd(d.toJSON().substr(0, 10));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$and.push({\n\t\t\t\t\t$or: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t$nested: {\n\t\t\t\t\t\t\t\tpath: '/data/statusWeekly',\n\t\t\t\t\t\t\t\tmatch: {\n\t\t\t\t\t\t\t\t\t$or: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t$and: [\n\t\t\t\t\t\t\t\t\t\t\t\t{ $or },\t//request-init is dependent on this structure\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\tfield: '/data/statusWeekly/available',\n\t\t\t\t\t\t\t\t\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalue: true,\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t$not: {\n\t\t\t\t\t\t\t\t$nested: {\n\t\t\t\t\t\t\t\t\tpath: '/data/statusWeekly',\n\t\t\t\t\t\t\t\t\tmatch: { $or },\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t});\n\t\t\t}\n\t\t\t$and.push({\n\t\t\t\t$not: {\n\t\t\t\t\tfield: '/data/status',\n\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\tvalue: 'archived',\n\t\t\t\t},\n\t\t\t});\n\t\t\t$and.push({\n\t\t\t\tfield: '/data/ownerActive',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: true\n\t\t\t});\n\t\t} else if (state.filter.showUnavailable) {\n\t\t\t$and.push({\n\t\t\t\t$or: [{\n\t\t\t\t\tfield: '/data/status',\n\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\tvalue: 'available',\n\t\t\t\t}, {\n\t\t\t\t\tfield: '/data/status',\n\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\tvalue: 'unavailable',\n\t\t\t\t}, {\n\t\t\t\t\tfield: '/data/ownerActive',\n\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\tvalue: true\n\t\t\t\t}],\n\t\t\t});\n\t\t} else {\n\t\t\t$and.push({\n\t\t\t\t$or: [{\n\t\t\t\t\tfield: '/data/status',\n\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\tvalue: 'available'\n\t\t\t\t}, {\n\t\t\t\t\t$and: [{\n\t\t\t\t\t\tfield: '/data/status',\n\t\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\t\tvalue: 'unavailable'\n\t\t\t\t\t}, {\n\t\t\t\t\t\tfield: '/data',\n\t\t\t\t\t\tcomparison: 'exists',\n\t\t\t\t\t\tvalue: 'availableFrom'\n\t\t\t\t\t}],\n\t\t\t\t}],\n\t\t\t});\n\t\t\t$and.push({\n\t\t\t\tfield: '/data/ownerActive',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: true\n\t\t\t});\n\t\t}\n\t\tif (state.filter.category2) {\n\t\t\t$and.push({\n\t\t\t\tfield: '/data/category2',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: state.filter.category2.id,\n\t\t\t});\n\t\t}\n\t\tif (state.filter.aso.length) {\n\t\t\tlet $or = state.filter.aso.map(e => {\n\t\t\t\treturn {\n\t\t\t\t\tfield: '/data/associations',\n\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\tvalue: e.id,\n\t\t\t\t};\n\t\t\t});\n\t\t\t$and.push({ $or });\n\t\t}\n\t\tlet dynamic = state.filter.dynamic.map(({ id, value }) => {\n\t\t\tlet field = state.dynamicFields.find(e => e.id === id);\n\t\t\tif (!field) throw new Error(`unknown field: ${id}`);\n\t\t\tlet inputType = inputTypeMap[field.data.type];\n\t\t\tlet $or = [];\n\t\t\tlet parsed = typeof value === 'object' && value.id ? value.id : value;\n\t\t\tlet fieldComparison = {\n\t\t\t\tfield: '/data/dynamicFields/field',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: id\n\t\t\t};\n\t\t\tif (Array.isArray(value)) {\n\t\t\t\tif (value.length === 0) return null;\n\t\t\t\tvalue.forEach(element => {\n\t\t\t\t\tparsed = typeof element === 'object' && element.id ? element.id : element;\n\t\t\t\t\t$or.push({ $and: [\n\t\t\t\t\t\tfieldComparison, {\n\t\t\t\t\t\t\tfield: `/data/dynamicFields/${inputType}`,\n\t\t\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\t\t\tvalue: parsed\n\t\t\t\t\t\t}\n\t\t\t\t\t] });\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\t$or.push({ $and: [\n\t\t\t\t\tfieldComparison, {\n\t\t\t\t\t\tfield: `/data/dynamicFields/${inputType}`,\n\t\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\t\tvalue: parsed\n\t\t\t\t\t}\n\t\t\t\t] });\n\t\t\t}\n\t\t\treturn {\n\t\t\t\t$nested: {\n\t\t\t\t\tpath: '/data/dynamicFields',\n\t\t\t\t\tmatch: {\n\t\t\t\t\t\t$or\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\t\t}).filter(e => !!e);\n\t\t$and = $and.concat(dynamic);\n\t\treturn { $and };\n\t},\n\n\tamountComparisonOptions: (state, getters) => {\n\t\tif (state.modus === 'request' && getters.usesPoultrySystem) {\n\t\t\treturn state.amountComparisonOptions.slice(0, 1);\n\t\t}\n\t\tif (state.modus === 'request' && !getters.usesPoultrySystem) {\n\t\t\treturn state.amountComparisonOptions.slice(2, 3);\n\t\t}\n\t\treturn state.amountComparisonOptions.slice(0, 2);\n\t}\n\n\n};\n\nconst actions = {\n\n\tasync loadOfferSummary({ commit, getters, rootGetters, state }) {\n\t\tif (!state.filter.animalkind) return;\n\t\tlet { requestMode } = state;\n\t\tlet ec = await getEntityclassByExternalId('offer');\n\t\tlet query = {\n\t\t\tfield: '/data/offergroup',\n\t\t\ttype: 'term',\n\t\t\tkey: 'groups',\n\t\t\tsub: [{\n\t\t\t\tfield: '/data/amount',\n\t\t\t\ttype: 'sum',\n\t\t\t\tkey: 'amount'\n\t\t\t}, {\n\t\t\t\tfield: '/data/owner',\n\t\t\t\ttype: 'term',\n\t\t\t\tkey: 'owners'\n\t\t\t}]\n\t\t};\n\t\tlet attributeFilter = filterAutApproval(getters.attributeFilter, rootGetters);\n\t\tlet res = await runAggregateQuery(ec.id, attributeFilter, query);\n\t\tlet grouped = {};\n\t\tif (res.aggregations) res.aggregations.groups.buckets.forEach(group => {\n\t\t\tgrouped[group.key] = {\n\t\t\t\tid: group.key,\n\t\t\t\tcount: group.doc_count,\n\t\t\t\tsups: group.owners.buckets.length,\n\t\t\t\tamount: group.amount.value,\n\t\t\t\toffers: []\n\t\t\t};\n\t\t});\n\t\tif (requestMode === state.requestMode) {\n\t\t\tcommit('setGroupedResult', grouped);\n\t\t\tEventBus.$emit('offer-search-reset');\n\t\t\twindow.scrollTo(0, 0);\n\t\t}\n\t},\n\n\tasync loadOffers({ commit, getters, state, rootGetters }, { groupId }) {\n\t\tif (!state.filter.animalkind) return;\n\t\tlet after = state.offerListGrouped[groupId].offers.length;\n\t\tif (after >= state.offerListGrouped[groupId].count) return;\n\t\tlet attributeFilter = filterAutApproval(getters.attributeFilter, rootGetters);\n\t\tif (!state.filter.offergroup) {\n\t\t\tattributeFilter.$and.push({\n\t\t\t\tfield: '/data/offergroup',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: groupId\n\t\t\t});\n\t\t}\n\t\tlet ec = await getEntityclassByExternalId('offer');\n\t\tlet offers = await search(ec.id, attributeFilter, { start: after, limit: 50 });\n\t\tcommit('addLoadedOffers', { groupId, after, offers });\n\t},\n\n\tasync setOffergroupOptions({ commit, state, rootState }) {\n\t\tif (!state.filter.animalkind || !rootState.country.currentCountry) return;\n\t\tlet country = rootState.country.currentCountry.id;\n\t\tlet animalkind = state.filter.animalkind;\n\t\tlet attributeFilter = { $and: [] };\n\t\tattributeFilter.$and.push({\n\t\t\tfield: '/data/activeInCountries',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: country\n\t\t});\n\t\tattributeFilter.$and.push({\n\t\t\tfield: '/data/animalkind',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: animalkind\n\t\t});\n\t\tlet ec = await getEntityclassByExternalId('offergroup');\n\t\t//will cache the search and only run it once even if 2 parallel requests come\n\t\tlet list = await cachedSearch(ec.id, attributeFilter);\n\t\tlist = list.sort((a, b) => {\n\t\t\tlet localeA = toLocale(a.data.labels).toLowerCase();\n\t\t\tlet localeB = toLocale(b.data.labels).toLowerCase();\n\t\t\tif (localeA < localeB) return -1;\n\t\t\telse if (localeA > localeB) return 1;\n\t\t\treturn 0; // equal\n\t\t});\n\t\tcommit('setOptions', { name: 'offergroup', list });\n\t\t//update current filter\n\t\tlet currentFilter = state.filter.offergroup;\n\t\tif (currentFilter && !list.find(e => e.id === currentFilter.id)) {\n\t\t\tcommit('setFilter', { name: 'offergroup', filter: null });\n\t\t\tif (state.filter.offerspec) {\n\t\t\t\tcommit('setFilter', { name: 'offerspec', filter: null });\n\t\t\t}\n\t\t}\n\t},\n\n\tcheckOfferSpecifications({ commit, state, getters }) {\n\t\tif (getters.offergroupSpecOptions &&\n\t\t\tstate.filter.offerspec &&\n\t\t\t!getters.offergroupSpecOptions.find(e => e.id === state.filter.offerspec.id)\n\t\t) {\n\t\t\tcommit('setFilter', { name: 'offerspec', filter: null });\n\t\t}\n\t},\n\n\tasync getAnimalkindOptions({ rootState, state, dispatch, commit }) {\n\t\tlet country = rootState.country.currentCountry;\n\t\tif (state.animalkindOptions) return;\n\t\tlet ids = country.data.enabledAnimals;\n\t\tlet list = await dispatch('admin/loadEntities', { ids, throwIfNotAllFound: true }, { root: true });\n\t\tcommit('setOptions', { name: 'animalkind', list });\n\t},\n\n\tasync getAnimalmenus({ rootState, state, commit }) {\n\t\tif (state.animalmenus.length) return;\n\t\tlet attributeFilter = { $and: [] };\n\t\tattributeFilter.$and.push({\n\t\t\tfield: '/data/countries',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: rootState.country.currentCountry.id\n\t\t});\n\t\tlet ec = await getEntityclassByExternalId('animalmenu');\n\t\tlet list = await search(ec.id, attributeFilter);\n\t\tcommit('setState', { name: 'animalmenus', list });\n\t},\n\n\tasync setAnimalusageOptions({ state, commit, rootState }) {\n\t\tif (!state.filter.animalkind || !rootState.country.currentCountry) return;\n\t\tlet country = rootState.country.currentCountry.id;\n\t\tlet animalkind = state.filter.animalkind;\n\t\tlet attributeFilter = { $and: [] };\n\t\tattributeFilter.$and.push({\n\t\t\tfield: '/data/countries',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: country\n\t\t});\n\t\tattributeFilter.$and.push({\n\t\t\tfield: '/data/animalkinds',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: animalkind\n\t\t});\n\t\tlet ec = await getEntityclassByExternalId('animalusage');\n\t\t//will cache the search and only run it once even if 2 parallel requests come\n\t\tlet list = await cachedSearch(ec.id, attributeFilter);\n\t\tcommit('setOptions', { name: 'animalusage', list });\n\t\t//update current filter\n\t\tlet currentFilter = state.filter.animalusage;\n\t\tif (Array.isArray(currentFilter)) {\n\t\t\tlet filtered = currentFilter.filter(e => list.find(o => o.id === e.id));\n\t\t\tif (filtered.length < currentFilter.length) commit('setOptions', { name: 'animalusage', filtered });\n\t\t}\n\t},\n\n\tasync setAgeCategoryOptions({ state, commit, rootState }) {\n\t\tif (!state.filter.animalkind || !rootState.country.currentCountry) return;\n\t\tlet animalkind = state.filter.animalkind;\n\t\tlet attributeFilter = { $and: [] };\n\t\tattributeFilter.$and.push({\n\t\t\tfield: '/data/animalkinds',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: animalkind,\n\t\t});\n\t\tattributeFilter.$and.push({\n\t\t\tfield: '/data/country',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: rootState.country.currentCountry.id,\n\t\t});\n\t\tlet ec = await getEntityclassByExternalId('agecategory');\n\t\t// will cache the search and only run it once even if 2 parallel requests come\n\t\tlet list = await cachedSearch(ec.id, attributeFilter);\n\t\tlist.sort((a, b) => a.data.sorting - b.data.sorting);\n\t\tcommit('setOptions', { name: 'ageCategory', list });\n\t\t// update current filter\n\t\tlet currentFilter = state.filter.ageCategory;\n\t\tif (currentFilter && !list.find(e => e.id === currentFilter.id)) {\n\t\t\tcommit('setFilter', { name: 'ageCategory', filter: null });\n\t\t}\n\t},\n\n\tasync setCategory2Options({ state, commit, rootState }) {\n\t\tif (!state.filter.animalkind || !rootState.country.currentCountry) return;\n\t\tlet country = rootState.country.currentCountry.id;\n\t\tlet animalkind = state.filter.animalkind;\n\t\tlet attributeFilter = { $and: [] };\n\t\tattributeFilter.$and.push({\n\t\t\tfield: '/data/animalkinds',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: animalkind,\n\t\t});\n\t\tattributeFilter.$and.push({\n\t\t\tfield: '/data/countries',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: country,\n\t\t});\n\t\tlet ec = await getEntityclassByExternalId('category2');\n\t\t// will cache the search and only run it once even if 2 parallel requests come\n\t\tlet list = await cachedSearch(ec.id, attributeFilter);\n\t\tcommit('setOptions', { name: 'category2', list });\n\t\t// update current filter\n\t\tlet currentFilter = state.filter.category2;\n\t\tif (currentFilter && !list.find(e => e.id === currentFilter.id)) {\n\t\t\tcommit('setFilter', { name: 'category2', filter: null });\n\t\t}\n\t},\n\n\tasync setCategory1Options({ state, commit, rootState }) {\n\t\tif (!state.filter.animalkind || !rootState.country.currentCountry) return;\n\t\tlet country = rootState.country.currentCountry.id;\n\t\tlet animalkind = state.filter.animalkind;\n\t\tlet attributeFilter = { $and: [] };\n\t\tattributeFilter.$and.push({\n\t\t\tfield: '/data/animalkinds',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: animalkind,\n\t\t});\n\t\tattributeFilter.$and.push({\n\t\t\tfield: '/data/country',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: country,\n\t\t});\n\t\tlet ec = await getEntityclassByExternalId('category1');\n\t\t// will cache the search and only run it once even if 2 parallel requests come\n\t\tlet list = await cachedSearch(ec.id, attributeFilter);\n\t\tcommit('setOptions', { name: 'category1', list });\n\t\t// update current filter\n\t\tlet currentFilter = state.filter.category1;\n\t\tif (currentFilter) {\n\t\t\tlet filtered = currentFilter.filter(e => list.find(o => o.id === e.id));\n\t\t\tif (filtered.length < currentFilter.length) commit('setOptions', { name: 'category1', filtered });\n\t\t}\n\t},\n\n\tasync setAsoOptions({ state, commit, rootState, rootGetters }) {\n\t\tif (!state.filter.animalkind || !rootState.country.currentCountry) return;\n\t\tlet attributeFilter = { $and: [] };\n\t\tattributeFilter.$and.push({\n\t\t\tfield: '/data/staticData/role',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: 'ASO',\n\t\t});\n\t\tattributeFilter.$and.push({\n\t\t\tfield: '/data/staticData/country',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: rootGetters['country/currentCountry'].id,\n\t\t});\n\t\tlet ec = await getEntityclassByExternalId('account');\n\t\t// will cache the search and only run it once even if 2 parallel requests come\n\t\tlet list = await cachedSearch(ec.id, attributeFilter);\n\t\tcommit('setOptions', { name: 'aso', list });\n\t\t// update current filter\n\t\tlet currentFilter = state.filter.aso;\n\t\tif (currentFilter) {\n\t\t\tlet filtered = currentFilter.filter(e => list.find(o => o.id === e.id));\n\t\t\tif (filtered.length < currentFilter.length) commit('setOptions', { name: 'aso', filtered });\n\t\t}\n\t},\n\n\tasync setDynamicFields({ commit, rootState }) {\n\t\tif (!rootState.country.currentCountry) return;\n\t\tlet country = rootState.country.currentCountry.id;\n\t\tlet attributeFilter = { $and: [] };\n\t\tattributeFilter = {\n\t\t\tfield: '/data/availableInCountries',\n\t\t\tcomparison: 'eq',\n\t\t\tvalue: country\n\t\t};\n\t\tlet ec = await getEntityclassByExternalId('offerfield');\n\t\tlet list = await cachedSearch(ec.id, attributeFilter);\n\t\tcommit('setDynamicFields', list);\n\t},\n\n\tasync runFilterRules({ dispatch, rootGetters, rootState, state, commit }) {\n\t\tlet rs = await dispatch('admin/getRulesetForKey', { key: 'search_fields' }, { root: true });\n\t\tif (!rs) return;\n\t\tlet facts = await dispatch('bbay/evaluate', {\n\t\t\tid: rs.id,\n\t\t\trev: rs.rev,\n\t\t\tfacts: {\n\t\t\t\tenv: {\n\t\t\t\t\tcountry: rootGetters['country/currentCountry'].id,\n\t\t\t\t\tmodus: state.modus,\n\t\t\t\t\tanimalkind: state.filter.animalkind,\n\t\t\t\t\tuser: rootGetters['auth/user/role'].toLowerCase()\n\t\t\t\t},\n\t\t\t\tinput: {\n\t\t\t\t\trequestType: rootState.request.main.selectedType\n\t\t\t\t},\n\t\t\t\tvisible: {},\n\t\t\t\tmandatory: {},\n\t\t\t\tcalendar: {},\n\t\t\t\tlocation: {},\n\t\t\t\tsearchfilter: {},\n\t\t\t\tdisplayHint: {}\n\t\t\t}\n\t\t}, { root: true });\n\t\tif (facts.visible.showhistory) {\n\t\t\tfacts.visible.history = facts.visible.showhistory;\n\t\t\tdelete facts.visible.showhistory;\n\t\t}\n\t\tcommit('setFilterVisible', facts.visible || {});\n\t\tcommit('setFilterMandatory', facts.mandatory || {});\n\t\tcommit('setCalendarSettings', facts.calendar);\n\t\tObject.entries(facts.searchfilter).forEach(e => {\n\t\t\tlet val = e[0] === 'gender' ? e[1].value : { id: e[1].value };\n\t\t\tcommit('setFilter', { name: e[0], filter: val });\n\t\t});\n\t\tcommit('setDisplayHints', facts.displayHint);\n\t\tif ('requestGeoRadius' in facts.location) commit('setDefaultLocationGeoRadius', facts.location.requestGeoRadius);\n\t\tcommit('setGeoRadiusByRegion', facts.location);\n\t\tcommit('setRequestOptionsFilter', facts.options);\n\t\tcommit('setGeneralFilterOptions', facts);\n\t},\n\n\tasync switchOfferToHistory({ commit }, { groupId, offerId, historyDate }) {\n\t\tlet historic = null;\n\t\tif (historyDate) {\n\t\t\thistoric = await getEntityByIdDate(offerId, `${historyDate} 23:59:59`);\t//is already cached\n\t\t}\n\t\tcommit('setOfferHistoric', { groupId, offerId, historic });\n\t},\n\n\tasync init({ commit, state, getters, dispatch }) {\n\t\tlet currentModus = state.modus;\n\t\tcommit('resetAllFilters');\n\t\tlet newModus = state.requestMode ? 'request'\n\t\t\t: !getters.usesPoultrySystem ? 'default'\n\t\t\t\t: state.spotMarketSwitch ? 'poultry-spot'\n\t\t\t\t\t: 'poultry-guest';\n\t\tif (currentModus !== newModus) {\n\t\t\tcommit('setModus', newModus);\n\t\t}\n\t\tif (getters.usesPoultrySystem && newModus !== 'poultry-spot') {\n\t\t\tcommit('setFilter', {\n\t\t\t\tname: 'statusWeekly',\n\t\t\t\tfilter: getters.startOfIsoWeek,\n\t\t\t});\n\t\t}\n\t\tcommit('setFilter', {\n\t\t\tname: 'amountComparison',\n\t\t\tfilter: getters.amountComparisonOptions[0]\n\t\t});\n\t\tawait dispatch('runFilterRules');\n\t\tif (state.modus !== 'request') await dispatch('loadOfferSummary');\n\t}\n\n};\n\nconst mutations = {\n\n\tsetOptions(state, { name, list }) {\n\t\tlet key = `${name}Options`;\n\t\tif (key in state) {\n\t\t\tstate[key] = list;\n\t\t} else {\n\t\t\tthrow new Error(`unknown options: ${name}`);\n\t\t}\n\t},\n\n\tsetState(state, { name, list }) {\n\t\tif (name in state) {\n\t\t\tstate[name] = list;\n\t\t} else {\n\t\t\tthrow new Error(`unknown state: ${name}`);\n\t\t}\n\t},\n\n\tsetFilter(state, { name, filter }) {\n\t\tif (name in state.filter) {\n\t\t\tstate.filter[name] = filter;\n\t\t\tstate.loaded = false;\n\t\t\tif (name === 'offergroup') {\n\t\t\t\tif (filter && filter.data.category2) {\n\t\t\t\t\tlet opt = state.category2Options.find(e => e.id === filter.data.category2) || null;\n\t\t\t\t\tstate.filter.category2 = opt;\n\t\t\t\t} else {\n\t\t\t\t\tstate.filter.category2 = null;\n\t\t\t\t}\n\t\t\t} else if (name === 'history' && filter && state.filter.historyTill) {\n\t\t\t\tlet from = new Date(filter);\n\t\t\t\tlet till = new Date(state.filter.historyTill);\n\t\t\t\tif (from > till) state.filter.historyTill = null;\n\t\t\t}\n\t\t} else {\n\t\t\tthrow new Error(`unknown filter: ${name}`);\n\t\t}\n\t},\n\n\tresetFilter(state, name) {\n\t\tif (name in state.filter) {\n\t\t\tlet val = state.filter[name];\n\t\t\tif (Array.isArray(val)) {\n\t\t\t\tif (val.length > 0) state.filter[name] = [];\n\t\t\t} else if (val) state.filter[name] = null;\n\t\t} else {\n\t\t\tlet existing = state.filter.dynamic.findIndex(e => e.id === name);\n\t\t\tif (existing > -1) state.filter.dynamic.splice(existing, 1);\n\t\t}\n\t\tstate.loaded = false;\n\t},\n\n\tsetLocation(state, location) {\n\t\tstate.filter.location = location;\n\t},\n\n\tsetGroupedResult(state, res) {\n\t\tstate.offerListGrouped = res;\n\t\tstate.loaded = true;\n\t},\n\n\taddLoadedOffers(state, { groupId, offers }) {\n\t\tlet arr = state.offerListGrouped[groupId].offers;\n\t\tstate.offerListGrouped[groupId].offers = arr.concat(offers);\n\t},\n\n\tsetOfferHistoric(state, { groupId, offerId, historic }) {\n\t\tconst offers = state.offerListGrouped[groupId].offers;\n\t\tconst offer = offers.find(o => o.id === offerId);\n\t\tif (!offer) throw new Error('unable to find offer with grp: '+groupId+' / id: '+offerId);\n\t\tif (!offer.historic && historic) {\n\t\t\tVue.set(offer, 'historic', historic);\n\t\t}\n\t\tVue.set(offer, 'showHistoric', !!historic);\n\t},\n\n\tsetAnimalkind(state, ak) {\n\t\tif (!ak) throw new Error('animalkind cannot be undefined');\n\t\tstate.filter.animalkind = ak;\n\t\tstate.offerListGrouped = [];\n\t\tstate.loaded = false;\n\t},\n\n\tsetDynamicFields(state, list) {\n\t\tstate.dynamicFields = list;\n\t},\n\n\tsetDynamicFieldValue(state, { id, value }) {\n\t\tlet existing = state.filter.dynamic.findIndex(e => e.id === id);\n\t\tif (existing > -1) {\n\t\t\tif (typeof value === 'undefined' || value === null) {\n\t\t\t\tstate.filter.dynamic.splice(existing, 1);\n\t\t\t} else {\n\t\t\t\tstate.filter.dynamic[existing].value = value;\n\t\t\t}\n\t\t\tstate.loaded = false;\n\t\t} else {\n\t\t\tstate.filter.dynamic.push({ id, value });\n\t\t}\n\t},\n\n\tsetModus(state, modus) {\n\t\tstate.modus = modus;\n\t},\n\n\tsetSpotMarketSwitch(state, sw) {\n\t\tstate.spotMarketSwitch = sw;\n\t},\n\n\tsetRequestModus(state, m) {\n\t\tstate.requestMode = m;\n\t},\n\n\tresetAllFilters(state) {\n\t\tObject.keys(state.filter).forEach(key => {\n\t\t\tif (['animalkind', 'locationGeoRadius', 'amountComparison'].includes(key)) return;\n\t\t\tif (key === 'location' && state.requestMode) return;\n\t\t\tlet val = state.filter[key];\n\t\t\tif (Array.isArray(val)) {\n\t\t\t\tif (val.length > 0) state.filter[key] = [];\n\t\t\t} else if (val) state.filter[key] = null;\n\t\t});\n\t\tstate.loaded = false;\n\t\tstate.offerListGrouped = [];\n\t},\n\n\tresetMode(state) {\n\t\tstate.requestMode = false;\n\t\tstate.spotMarketSwitch = false;\n\t},\n\n\tsetFilterVisible(state, filter) {\n\t\tstate.filterVisible = filter;\n\t},\n\n\tsetFilterMandatory(state, filter) {\n\t\tstate.filterMandatory = filter;\n\t},\n\n\tsetCalendarSettings(state, settings) {\n\t\tstate.calendarSettings = settings;\n\t},\n\n\tsetDisplayHints(state, hints) {\n\t\tstate.displayHints = hints;\n\t},\n\n\tsetDefaultLocationGeoRadius(state, radius) {\n\t\tstate.defaultLocationGeoRadius = radius;\n\t},\n\n\tsetGeoRadiusByRegion(state, regions) {\n\t\tstate.geoRadiusByRegion = regions;\n\t},\n\n\tsetRequestOptionsFilter(state, options) {\n\t\tstate.requestOptionsFilter = options;\n\t},\n\n\tsetFilterExport(state, ex) {\n\t\tstate.filterExport = !!ex;\n\t},\n\n\tsetGeneralFilterOptions(state, facts) {\n\t\tstate.allowTransnationalSearch = facts.transnational && facts.transnational.enabled;\n\t},\n\n\tsetOfferGroupOpen(state, { group, open }) {\n\t\tif (open) {\n\t\t\tif (!state.offerGroupsOpen.includes(group)) {\n\t\t\t\tstate.offerGroupsOpen.push(group);\n\t\t\t}\n\t\t} else {\n\t\t\tlet idx = state.offerGroupsOpen.indexOf(group);\n\t\t\tif (idx > -1) {\n\t\t\t\tstate.offerGroupsOpen.splice(idx, 1);\n\t\t\t}\n\t\t}\n\t},\n\n\tresetOfferGroupsOpen(state) {\n\t\tstate.offerGroupsOpen = [];\n\t}\n\n};\n\nfunction filterAutApproval(attributeFilter, rootGetters) {\n\tlet filter = JSON.parse(JSON.stringify(attributeFilter));\n\tif (rootGetters['country/currentCountry'].data.offerAutApproval) {\n\t\tfilter.$and.push({\n\t\t\t$not: {\n\t\t\t\tfield: '/data/autApproval',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: 'pending',\n\t\t\t},\n\t\t}, {\n\t\t\t$not: {\n\t\t\t\tfield: '/data/autApproval',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: 'rejected',\n\t\t\t},\n\t\t});\n\t}\n\treturn filter;\n}\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","import management from './offer/management.js';\nimport search from './offer/search.js';\n\nexport default {\n\tnamespaced: true,\n\tmodules: {\n\t\tmanagement,\n\t\tsearch\n\t}\n};\n","import debounce from 'debounce';\n\nconst state = {\n\n\tidsWanted: [],\n\tidsUnavailable: [],\n\tentities: []\n\n};\n\n\nconst getters = {\n\n\tbyId: state => id => {\n\t\treturn state.entities.find(e => e && e.id === id);\n\t}\n\n};\n\nconst actions = {\n\n\taddRequiredEntity({ state, commit, dispatch }, { id }) {\n\t\tif (state.idsWanted.includes(id) ||\n\t\t\tstate.idsUnavailable.includes(id) ||\n\t\t\tstate.entities.find(e => e.id === id)) return;\n\t\tcommit('addId', id);\n\t\tdispatch('debouncedLoad');\n\t},\n\n\tdebouncedLoad: debounce(async function loadRelated({ state, commit, dispatch }) {\n\t\tlet ids = JSON.parse(JSON.stringify(state.idsWanted));\n\t\tif (ids.length === 0) return;\n\t\tlet res = await dispatch('admin/loadEntities', { ids, throwIfNotAllFound: false }, { root: true });\n\t\tlet unavailable = [];\n\t\tres = res.filter((e, i) => {\n\t\t\tif (!e) {\n\t\t\t\tunavailable.push(ids[i]);\n\t\t\t}\n\t\t\treturn !!e;\n\t\t});\n\t\tif (unavailable.length > 0) {\n\t\t\tcommit('addUnavailable', unavailable);\n\t\t}\n\t\tcommit('clearIds', ids);\n\t\tcommit('addEntities', res);\n\t}, 20)\n\n};\n\nconst mutations = {\n\n\taddId(state, id) {\n\t\tstate.idsWanted.push(id);\n\t},\n\taddEntities(state, entities) {\n\t\tstate.entities = state.entities.concat(entities);\n\t},\n\tclearIds(state, ids) {\n\t\tstate.idsWanted = state.idsWanted.filter(id => !ids.includes(id));\n\t},\n\tclearAllIds(state) {\n\t\tstate.idsWanted = [];\n\t},\n\tclearEntities(state) {\n\t\tstate.entities = [];\n\t},\n\taddUnavailable(state, ids) {\n\t\tstate.idsUnavailable = state.idsUnavailable.concat(ids);\n\t}\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","import LRU from 'lru-cache';\nimport { post } from '@/util/request.js';\n\nconst cache = new LRU({\n\tmax: 200,\n\tmaxAge: 1000 * 60 * 60,\n});\n\nexport async function getCity({ countrycode, citycode, cityname }) {\n\tlet key = `${countrycode}_${citycode}_${cityname}`;\n\tif (cache.has(key)) {\n\t\treturn cache.get(key);\n\t}\n\tlet p;\n\tp = await post('geocode/get/city', {\n\t\tcountrycode,\n\t\tcitycode,\n\t\tcityname,\n\t});\n\tcache.set(key, p);\n\treturn p;\n}\n\nexport async function getCityList({ countrycode, citycode, cityname, usefuzzy }) {\n\tlet key = `list_${countrycode}_${citycode}_${cityname}_${usefuzzy?'F':'0'}`;\n\tif (cache.has(key)) {\n\t\treturn cache.get(key);\n\t}\n\tlet p;\n\tlet params = {\n\t\tcountrycode,\n\t\tusefuzzy\n\t};\n\tif (citycode) params.citycode = citycode;\n\tif (cityname) params.cityname = cityname;\n\tif (!cityname && !citycode) throw new Error('must specify cityname or citycode');\n\tp = await post('geocode/list/city', params);\n\tcache.set(key, p);\n\treturn p;\n}\n","import * as GeoRepo from '@/repository/geocode.js';\n\nconst actions = {\n\n\tasync getLocationCity({ dispatch, rootState, rootGetters }, { countryId, citycode, cityname, usefuzzy = true }) {\n\t\tlet countrycode;\n\t\tif (countryId && countryId !== rootState.country.currentCountry.id) {\n\t\t\tif (!rootState.country.list.length) await dispatch('country/loadAll', null, { root: true });\n\t\t\tlet country = rootGetters['country/byId'](countryId);\n\t\t\tif (!country) throw new Error(`missing country '${countryId}'`);\n\t\t\tcountrycode = country.data.code;\n\t\t} else {\n\t\t\tcountrycode = rootState.country.currentCountry.data.code;\n\t\t}\n\t\tlet list = await GeoRepo.getCityList({ countrycode, citycode, cityname, usefuzzy });\n\t\treturn list;\n\t}\n};\n\nexport default {\n\tnamespaced: true,\n\tactions,\n};\n","import { getEntityById, getEntityclassByExternalId, search } from '@/repository/system.js';\n\nconst state = {\n\tpages: [],\n\tecId: null\n};\n\nconst getters = {\n\tpage: (state) => (id) => {\n\t\tlet page = state.pages.find(e => e.id === id);\n\t\tif (!page) {\n\t\t\treturn null;\n\t\t}\n\t\treturn page;\n\t},\n\tusage: (state) => (usage) => {\n\t\tlet page = state.pages.find(e => e.data.usage === usage);\n\t\tif (!page) {\n\t\t\treturn null;\n\t\t}\n\t\treturn page;\n\t}\n};\n\nconst actions = {\n\tasync loadPage({ commit, getters }, { id }) {\n\t\tif (getters.page(id)) return;\n\t\tlet page = await getEntityById(id);\n\t\tcommit('addPage', page);\n\t},\n\tasync loadUsage({ commit, state, getters }, { usage }) {\n\t\tif (!state.ecId) {\n\t\t\tlet ec = await getEntityclassByExternalId('cmspage');\n\t\t\tcommit('setEcId', ec);\n\t\t}\n\t\tif (getters.usage(usage)) return;\n\t\tlet filter = {\n\t\t\t$and: [{\n\t\t\t\tfield: '/data/usage',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: usage\n\t\t\t}]\n\t\t};\n\t\tlet res = await search(state.ecId, filter);\n\t\tres.forEach(page => {\n\t\t\tcommit('addPage', page);\n\t\t});\n\t}\n};\n\nconst mutations = {\n\taddPage(state, page) {\n\t\tstate.pages = state.pages.filter(p => p.id !== page.id);\n\t\tstate.pages.push(page);\n\t},\n\tsetEcId(state, { id }) {\n\t\tstate.ecId = id;\n\t}\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","import { search, getEntityclassByExternalId } from '@/repository/system.js';\n\nconst state = {\n\n\tregions: []\n\n};\n\n\nconst getters = {\n\n\tall: (state) => {\n\t\treturn state.regions;\n\t},\n\n\tforCurrentCountry: (state, getters, rootState, rootGetters) => {\n\t\treturn state.regions.filter(e => e.data.country === rootGetters['country/currentCountry'].id);\n\t},\n\n\tforCountry: state => countryId => {\n\t\treturn state.regions.filter(e => e.data.country === countryId);\n\t}\n};\n\nconst actions = {\n\n\tasync loadAll({ commit }) {\n\t\tlet ec = await getEntityclassByExternalId('region');\n\t\tlet res = await search(ec.id);\n\t\tcommit('setRegions', res);\n\t},\n\n\tasync loadForCurrentCountry({ commit, rootGetters }) {\n\t\tlet ec = await getEntityclassByExternalId('region');\n\t\tlet attributeFilter = {\n\t\t\t$and: [{\n\t\t\t\tfield: '/data/country',\n\t\t\t\tcomparison: 'eq',\n\t\t\t\tvalue: rootGetters['country/currentCountry'].id\n\t\t\t}]\n\t\t};\n\t\tlet res = await search(ec.id, attributeFilter);\n\t\tcommit('setRegions', res);\n\t},\n\n\tasync init({ state, dispatch }) {\n\t\tif (!state.regions.length) {\n\t\t\tawait dispatch('loadAll');\n\t\t}\n\t}\n\n};\n\nconst mutations = {\n\n\tsetRegions(state, list) {\n\t\tstate.regions = list;\n\t}\n\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","import { search, getEntityclassByExternalId } from '@/repository/system.js';\n\nconst state = {\n\n\tlist: []\n\n};\n\nconst getters = {\n\n\tbyId: (state) => (id) => {\t//latest rev\n\t\treturn state.list.filter(e => e.id === id).sort((a, b) => b.rev - a.rev)[0];\n\t},\n\n\tbyIdRev: (state) => (id, rev) => {\n\t\treturn state.list.find(e => e.id === id && e.rev === rev);\n\t},\n\n\tlatestRevs: (state) => {\n\t\tlet ids = new Set();\n\t\treturn state.list.slice(0).sort((a, b) => b.rev - a.rev).filter(e => {\n\t\t\tif (ids.has(e.id)) return false;\n\t\t\tids.add(e.id);\n\t\t\treturn true;\n\t\t});\n\t}\n\n};\n\nconst actions = {\n\n\tasync loadAll({ state, dispatch, commit }) {\n\t\tif (state.list.length > 0) return;\n\t\tlet ec = await getEntityclassByExternalId('requestformfield');\n\t\tlet res = await search(ec.id);\n\t\tcommit('setAll', res);\n\t},\n\n\tasync get({ state, dispatch, commit }, { id, rev }) {\n\t\tlet existing = id && rev ? state.list.find(e => e.id === id && e.rev === rev) : null;\n\t\tif (existing) return existing;\n\t\tlet entity = await dispatch('admin/loadEntity', { id, rev }, { root: true });\n\t\tcommit('addToList', entity);\n\t\treturn entity;\n\t},\n\n\tgetFromStep({ dispatch }, { fields }) {\n\t\treturn Promise.all(fields.map(f => dispatch('get', f)));\n\t}\n\n};\n\nconst mutations = {\n\n\tsetAll(state, list) {\n\t\tstate.list = list;\n\t},\n\n\taddToList(state, entity) {\n\t\tlet exists = state.list.find(e => e.id === entity.id && e.rev === entity.rev);\n\t\tif (exists) return;\n\t\tstate.list.push(entity);\n\t}\n\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","import {\n\tsearch,\n\tgetEntityclassByExternalId,\n\tcountEntries\n} from '@/repository/system.js';\nimport * as TdbRepo from '@/repository/tdb.js';\nimport { Request } from 'tdbcommon';\n\nconst state = {\n\tpackages: [],\n\tprocesses: [],\n\n\tselectedType: null,\n\tselectedFilters: {},\n\tallAvailableOffers: [],\n\n\tpkgForClassifications: {},\t// { [classid]: { id, rev } }\n\n\tasoSelected: null,\n\tinsSelected: null,\n\tagrSelected: null,\n\tlosSelected: null,\n\tnoGeoPos: null,\n\tregion: null,\n\thints: {},\n\tagrData: null\n};\n\n\nconst getters = {\n\n\tgetPackageForClassification: (state) => (classificationId, count) => {\n\t\tif (count > 0 && state.pkgForClassifications.withOffers\n\t\t\t&& state.pkgForClassifications.withOffers[classificationId]) {\n\t\t\treturn state.pkgForClassifications.withOffers[classificationId];\n\t\t}\n\t\tif (!state.pkgForClassifications.base) return null;\n\t\treturn state.pkgForClassifications.base[classificationId];\n\t},\n\n\tcanCreateRequest: (state, getters, rootState) => {\n\t\treturn state.selectedType &&\n\t\t\t(state.insSelected || state.agrSelected) &&\n\t\t\trootState.offer.search.modus === 'request' &&\n\t\t\tstate.losSelected &&\n\t\t\t!state.noGeoPos;\n\t},\n\n\trequestMode: (state, getters, rootState) => {\n\t\treturn rootState.offer.search.requestMode;\n\t},\n\n\tavailableRequestTypes: (state, getters, rootState) => {\n\t\tlet types = [];\n\t\tif (getters.getAsoId) {\n\t\t\ttypes.push(Request.RequestConstants.TYPE_ASO);\n\t\t}\n\t\tif (getters.getInsId) {\n\t\t\ttypes.push(Request.RequestConstants.TYPE_INS);\n\t\t\ttypes.push(Request.RequestConstants.TYPE_RESTRICTEDVET);\n\t\t}\n\t\tlet animalkind = rootState.offer.search.filter.animalkind;\n\t\tlet country = rootState.country.currentCountry;\n\t\tif (country.data.animalkindsUsingLowhatchRequests?.includes(animalkind) &&\n\t\t\tstate.agrData?.staticData.eggBreeder\n\t\t) {\n\t\t\ttypes.push(Request.RequestConstants.TYPE_LOWHATCH);\n\t\t}\n\t\tconsole.log('availableTypes', types, state.agrData);\n\t\tif (state.agrData) {\n\t\t\ttypes = types.filter(e => state.agrData?.staticData.canRequest?.includes(e));\n\t\t}\n\t\treturn types;\n\t},\n\n\tgetAgrId: (state, getters, rootState, rootGetters) => {\n\t\treturn rootGetters['auth/user/role'] === 'AGR' ? rootGetters['auth/token/account'] : state.agrSelected;\n\t},\n\n\tgetInsId: (state, getters, rootState, rootGetters) => {\t//CONTINUE HERE\n\t\treturn rootGetters['auth/user/role'] === 'INS' ? rootGetters['auth/token/account'] : state.insSelected;\n\t},\n\n\tgetAsoId: (state, getters, rootState, rootGetters) => {\n\t\treturn rootGetters['auth/user/role'] === 'ASO' ? rootGetters['auth/token/account'] : state.asoSelected;\n\t},\n\n\tgetRegion: (state) => {\n\t\treturn state.region;\n\t},\n\n\tshowHint: state => name => {\n\t\tif (name in state.hints) return state.hints[name];\n\t\treturn false;\n\t},\n};\n\n\nconst actions = {\n\n\tasync loadPackages({ commit }) {\n\t\tlet packageEc = await getEntityclassByExternalId('requestpackage');\n\t\tlet res = await search(packageEc.id);\n\t\tcommit('setPackages', res);\n\t},\n\n\tasync init({ state, dispatch, rootGetters, commit }) {\n\t\tif (!state.packages.length) {\n\t\t\tawait dispatch('loadPackages');\n\t\t}\n\t\tif (rootGetters['auth/user/role'] === 'AGR') {\n\t\t\tcommit('setAgrData', rootGetters['auth/user/details']);\n\t\t}\n\t},\n\n\tasync loadAgrData({ commit, getters, dispatch, rootGetters }) {\t//CONTINUE HERE. not used\n\t\tif (rootGetters['auth/user/role'] === 'AGR' || !getters.getAgrId) return;\n\t\tlet agrData = await dispatch('admin/loadEntity', { id: getters.getAgrId }, { root: true });\n\t\tcommit('setAgrData', agrData.data);\n\t},\n\n\tasync initRequest({ rootGetters, state, commit, getters }, { offergroup, pkg, sup }) {\n\t\tif (!pkg.rev) {\n\t\t\tlet pkg2 = rootGetters['related/byId'](pkg.id);\n\t\t\tpkg.rev = pkg2.rev;\n\t\t}\n\t\tcommit('offer/search/setFilterExport', true, { root: true });\n\t\tlet env = {\n\t\t\toffergroup,\n\t\t\tcountry: rootGetters['country/currentCountry'].id,\n\t\t\tagr: getters.getAgrId,\n\t\t\tins: getters.getInsId,\n\t\t\tagrSite: state.losSelected,\n\t\t\tpackage: { id: pkg.id, rev: pkg.rev },\n\t\t\trequestType: state.selectedType,\n\t\t\tsearchFilter: rootGetters['offer/search/attributeFilter']\n\t\t};\n\t\tcommit('offer/search/setFilterExport', false, { root: true });\n\t\tif (sup) env.sup = sup;\n\t\tif (getters.getAsoId) {\n\t\t\tenv.aso = getters.getAsoId;\n\t\t}\n\t\tlet res = await TdbRepo.requestInit(env);\n\t\tcommit('reset');\n\t\tcommit('offer/search/resetAllFilters', null, { root: true });\n\t\treturn res;\n\t},\n\tasync initFollowupRequest({ rootGetters, dispatch }, { process }) {\n\t\tlet pkg = JSON.parse(JSON.stringify(process.followupRequest));\n\t\tif (!pkg.rev) {\n\t\t\tlet tmp = rootGetters['related/byId'](pkg.id);\n\t\t\tif (!tmp) {\n\t\t\t\ttmp = await dispatch('admin/loadEntity', { id: pkg.id }, { root: true });\n\t\t\t}\n\t\t\tpkg.rev = tmp.rev;\n\t\t}\n\t\tif (!process.getId()) throw new Error('no process id found');\n\t\tlet agr = process.getMembersWithRole().find(e => e.role === 'agr').id;\n\t\tlet ins = process.getMembersWithRole().find(e => e.role === 'ins').id;\n\t\tlet env = {\n\t\t\tfollowupFor: process.getId(),\n\t\t\toffergroup: process.offergroup.id,\n\t\t\tcountry: rootGetters['country/currentCountry'].id,\n\t\t\tagr,\n\t\t\tins,\n\t\t\tagrSite: process.agrAddress.siteId,\n\t\t\tpackage: { id: pkg.id, rev: pkg.rev },\n\t\t\trequestType: process.type,\n\t\t\tsearchFilter: process.searchFilter\n\t\t};\n\t\tlet res = await TdbRepo.requestInit(env);\n\t\treturn res;\n\t},\n\n\tasync getFollowupProcesses(_, { ids }) {\n\t\tlet processEc = await getEntityclassByExternalId('request-process');\n\t\tlet attributeFilter = {\n\t\t\t$or: ids.map(id => {\n\t\t\t\treturn {\n\t\t\t\t\t'field': '/data/isFollowupFor',\n\t\t\t\t\t'comparison': 'eq',\n\t\t\t\t\t'value': id\n\t\t\t\t};\n\t\t\t})\n\t\t};\n\t\tlet result = await search(processEc.id, attributeFilter, { start: 0, limit: ids.length });\n\t\treturn result;\n\t},\n\n\tasync loadProcesses(_, { start, limit, sorting, attributeFilter }) {\n\t\tlet processEc = await getEntityclassByExternalId('request-process');\n\t\tlet count = await countEntries(processEc.id, attributeFilter);\n\t\tif (count === 0) {\n\t\t\treturn { count, list: [] };\n\t\t}\n\t\tlet list = await search(processEc.id, attributeFilter, { start, limit }, sorting);\n\t\tlet wait = list.map(p => {\n\t\t\treturn TdbRepo.loadPackage(p.data.package.id, p.data.package.rev);\n\t\t});\n\t\tlet packages = await Promise.all(wait);\n\t\t// console.log('packages', packages);\n\t\tlist = list.map(p => {\n\t\t\tlet process = new Request.RequestProcess();\n\t\t\tprocess.fromStorage(p);\n\t\t\tlet pkg = packages.find(pkg => pkg.getId() === process.package.id && pkg.getRev() === process.package.rev);\n\t\t\tif (!pkg) throw new Error(`cannot find pkg: ${process.package.id} / ${process.package.rev}`);\n\t\t\tprocess.setPackage(pkg);\n\t\t\treturn process;\n\t\t});\n\t\treturn { count, list };\n\t},\n\n\tasync loadProcess(_, { id }) {\n\t\tawait getEntityclassByExternalId('request-process');\n\t\treturn TdbRepo.loadProcess(id);\n\t},\n\n\tasync loadFieldForPackage(_, { pkg }) {\n\t\tlet ret = await TdbRepo.loadFieldForPackage(pkg);\n\t\treturn ret;\n\t},\n\n\tasync fillProcessForm(_, { process, fieldData, attachments, owner, pkg }) {\n\t\t// returns process but missing some things like _meta, that are not available from TdbRepo.requestFill\n\t\tlet entity = {};\n\t\tentity.data = await TdbRepo.requestFill({\n\t\t\tprocess, fieldData, attachments, owner\n\t\t});\n\t\tlet requestProcess = new Request.RequestProcess();\n\t\trequestProcess.fromStorage(entity);\n\t\trequestProcess.setPackage(pkg);\n\t\treturn requestProcess;\n\t},\n\n\tasync retractProcess(_, { process }) {\n\t\tlet entity = {};\n\t\tentity.data = await TdbRepo.retractProcess({ process: process.getId() });\n\t\tlet requestProcess = new Request.RequestProcess();\n\t\trequestProcess.fromStorage(entity);\n\t\treturn requestProcess;\n\t},\n\n\tasync runClassifications({ state, getters, rootState, dispatch, rootGetters, commit }) {\n\t\tlet rs = await dispatch('admin/getRulesetForKey', { key: 'request_classifications' }, { root: true });\n\t\tconsole.log('request_classifications', rs);\n\t\tif (!rs) return;\n\t\tconst genderMap = { 1: 'f', 2: 'm' };\n\t\tconst input = {\n\t\t\tenv: {\n\t\t\t\tcountry: rootGetters['country/currentCountry'].id,\n\t\t\t\tanimalkind: rootState.offer.search.filter.animalkind,\n\t\t\t\tuserHasActiveAso: getters.availableRequestTypes.includes(Request.RequestConstants.TYPE_ASO),\n\t\t\t\tuserHasActiveIns: getters.availableRequestTypes.includes(Request.RequestConstants.TYPE_INS)\n\t\t\t},\n\t\t\tinput: {\n\t\t\t\trequestType: state.selectedType,\n\t\t\t\tanimalusage: rootState.offer.search.filter.animalusage?.id,\n\t\t\t\tanimalgender: genderMap[rootState.offer.search.filter.gender],\n\t\t\t},\n\t\t\thints: {},\n\t\t\trequest: {},\n\t\t\trequestWithOffers: {}\n\t\t};\n\t\tif (getters.getInsId) {\n\t\t\tinput.env.userIns = getters.getInsId;\n\t\t\ttry {\n\t\t\t\tlet aut = await dispatch('getAutForAgr', { agr: getters.getAgrId, agrSite: state.losSelected });\n\t\t\t\tinput.env.userAut = aut.id;\n\t\t\t} catch (e) {\n\t\t\t\tconsole.error('trying to find aut for ins: ', e);\n\t\t\t}\n\t\t}\n\t\tif (getters.getAsoId) {\n\t\t\tinput.env.userAso = getters.getAsoId;\n\t\t}\n\t\tlet facts = await dispatch('bbay/evaluate', {\n\t\t\tid: rs.id,\n\t\t\trev: rs.rev,\n\t\t\tfacts: input\n\t\t}, { root: true });\n\t\tcommit('setRequestPackageForClassifications', {\n\t\t\tbase: facts.request,\n\t\t\twithOffers: facts.requestWithOffers\n\t\t});\n\t\tcommit('setShowHints', facts.hints);\n\t},\n\n\tasync getAutForAgr({ dispatch }, { agr, agrSite }) {\n\t\tlet agrData = await dispatch('admin/loadEntity', { id: agr }, { root: true });\n\t\tlet allLos = agrData.data.userData.supData.flatMap(s => s.locationsOfSale);\n\t\tlet los = allLos.find(e => e && e.id === agrSite);\n\t\tif (!los) throw new Error(`location of sale not found: ${agrSite}`);\n\t\tlet region = los.address.region;\t//@TODO change\n\t\tif (!region) throw new Error('no region specified');\n\t\tlet { list } = await dispatch('admin/loadUsers', {\n\t\t\tstart: 0,\n\t\t\tlimit: 1,\n\t\t\tattributeFilter: {\n\t\t\t\t$and: [{\n\t\t\t\t\tfield: '/data/registrationOptionName',\n\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\tvalue: 'aut'\n\t\t\t\t}, {\n\t\t\t\t\tfield: '/data/staticData/responsibleForRegions',\n\t\t\t\t\tcomparison: 'eq',\n\t\t\t\t\tvalue: region\n\t\t\t\t}]\n\t\t\t}\n\t\t}, { root: true });\n\t\tif (!list.length) throw new Error(`no aut found for region ${region}`);\n\t\tlet aut = list[0];\n\t\treturn aut;\n\t}\n};\n\n\nconst mutations = {\n\n\treset(state) {\n\t\tstate.asoSelected = null;\n\t\tstate.insSelected = null;\n\t\tstate.agrSelected = null;\n\t\tstate.losSelected = null;\n\t\tstate.selectedType = null;\n\t\tstate.noGeoPos = null;\n\t\tstate.region = null;\n\t},\n\n\tsetPackages(state, list) {\n\t\tstate.packages = list;\n\t},\n\n\tsetSelectedAso(state, val) {\n\t\tstate.asoSelected = val;\n\t},\n\n\tsetSelectedIns(state, val) {\n\t\tstate.insSelected = val;\n\t},\n\n\tsetSelectedAgr(state, val) {\n\t\tstate.agrSelected = val;\n\t},\n\n\tsetSelectedLos(state, { site, region }) {\n\t\tstate.losSelected = site;\n\t\tstate.region = region;\n\t},\n\n\tsetSelectedType(state, val) {\n\t\tstate.selectedType = val;\n\t},\n\n\tsetNoGeoPos(state, val) {\n\t\tstate.noGeoPos = val;\n\t},\n\n\tsetRequestPackageForClassifications(state, r) {\n\t\tstate.pkgForClassifications = r;\n\t},\n\n\tsetAgrData(state, data) {\n\t\tstate.agrData = data;\n\t},\n\n\tsetShowHints(state, hints) {\n\t\tstate.hints = hints;\n\t}\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","import LRU from 'lru-cache';\nimport * as ExportRepo from '@/repository/export';\nimport * as TdbRepo from '@/repository/tdb';\nimport * as DlHelper from '@/util/document-helper.js';\nimport i18n from '@/plugins/i18n.js';\nimport { Request } from 'tdbcommon';\n\nconst viewcache = new LRU({\n\tmax: 10,\n\tmaxAge: 1000 * 10\n});\n\nconst requestStatusLabels = {\n\t'10000d95-7d41-48e8-ba20-2273dc7cbd5d': 'none',\n\t'200001e9-ff8c-468b-a68b-b44ca2fa7deb': 'archived'\n};\n\nconst state = {\n\texportRunning: false,\n\texportType: ''\n};\n\nconst getters = {\n\tavailableStatusLabels: (s, g, rs, rg) => {\n\t\tlet base = Object.entries(requestStatusLabels).map(([k, v]) => ({ value: k, text: i18n.t(`request.userStatus.${v}`) }));\n\t\tlet user = rg['auth/user/details'];\n\t\tlet folders = [];\n\t\tif (user.userData.requestFolders) {\n\t\t\tfolders = user.userData.requestFolders.map(e => ({ value: e.id, text: e.label }));\n\t\t}\n\t\treturn base.concat(folders);\n\t}\n};\n\nconst actions = {\n\n\tsetViewCache(_, { id, value }) {\n\t\tif (!value || !id) throw new Error('id and value must be set');\n\t\tif (!(value instanceof Request.RequestProcess)) {\n\t\t\tthrow new Error('must be a RequestProcess class');\n\t\t}\n\t\tviewcache.set(id, value);\n\t},\n\n\tgetViewCache(_, { id }) {\n\t\treturn viewcache.get(id);\n\t},\n\n\tasync updateExportType({ commit, rootGetters, dispatch }) {\n\t\tlet rs = await dispatch('admin/getRulesetForKey', { key: 'exports' }, { root: true });\n\t\tif (!rs) return;\n\t\tlet facts = await dispatch('bbay/evaluate', {\n\t\t\tid: rs.id,\n\t\t\trev: rs.rev,\n\t\t\tfacts: {\n\t\t\t\tenv: {\n\t\t\t\t\tcountry: rootGetters['country/currentCountry'].id,\n\t\t\t\t\trole: rootGetters['auth/user/role'].toLowerCase(),\n\t\t\t\t\tuser: rootGetters['auth/token/account']\n\t\t\t\t},\n\t\t\t\texport: 'requests-external'\n\t\t\t}\n\t\t}, { root: true });\n\t\tcommit('setExportType', facts.export);\n\t},\n\n\tasync runExport({ state, commit, rootState, dispatch }, { attributeFilter, language }) {\n\t\tif (state.exportRunning) throw new Error('export already running');\n\t\ttry {\n\t\t\tcommit('setRunning', true);\n\t\t\tif (!state.exportType) await dispatch('updateExportType');\n\t\t\tif (!language) language = rootState.base.uiLocale;\n\t\t\tlet config = await ExportRepo.getConfig({ alias: state.exportType });\n\t\t\tlet jobParams = {\n\t\t\t\tconfig: config.id,\n\t\t\t\tcustomColumnHeaders: [],\n\t\t\t\trunParams: {\n\t\t\t\t\tlanguage,\n\t\t\t\t\tfallbackLanguage: rootState.base.fallbackLocale,\n\t\t\t\t\ttl: {\n\t\t\t\t\t\t'gender.mixed': i18n.t('offermanagement.search.mixed', language),\n\t\t\t\t\t\t'gender.female': i18n.t('offermanagement.search.female', language),\n\t\t\t\t\t\t'gender.male': i18n.t('offermanagement.search.male', language),\n\t\t\t\t\t\t'status.open': i18n.t('request.status.open', language),\n\t\t\t\t\t\t'status.closed': i18n.t('request.status.closed', language),\n\t\t\t\t\t\t'status.accepted': i18n.t('request.status.accepted', language),\n\t\t\t\t\t\t'status.rejected': i18n.t('request.status.rejected', language)\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tsearchFilter: attributeFilter\n\t\t\t};\n\t\t\tconst cols = [\n\t\t\t\t'agrName',\n\t\t\t\t'agrStreet',\n\t\t\t\t'agrCitycode',\n\t\t\t\t'agrCity',\n\t\t\t\t'aut',\n\t\t\t\t'ins',\n\t\t\t\t'aso',\n\t\t\t\t'packageName',\n\t\t\t\t'status',\n\t\t\t\t'animalkind',\n\t\t\t\t'offergroup',\n\t\t\t\t'animalsRequired',\n\t\t\t\t'reason',\n\t\t\t\t'reason_text_agr',\n\t\t\t\t'reason_text_aut',\n\t\t\t\t'reason_text_ins',\n\t\t\t\t'reason_text_aso',\n\t\t\t\t'filterGender',\n\t\t\t\t'ageGroup',\n\t\t\t\t'category1',\n\t\t\t\t'category2',\n\t\t\t\t'createdDate',\n\t\t\t\t'updatedDate',\n\t\t\t\t'controlNumber',\n\t\t\t\t'hid',\n\t\t\t\t'agr_reason',\n\t\t\t\t'species_name',\n\t\t\t\t'vvvnr',\n\t\t\t\t'exception_1344',\n\t\t\t\t'animal_ident_method',\n\t\t\t\t'detailed_description',\n\t\t\t\t'current_animal_count',\n\t\t\t\t'animal_noneco_count_12mo',\n\t\t\t\t'main_answer_ins',\n\t\t\t\t'main_answer_aut',\n\t\t\t\t'reason_dehorning',\n\t\t\t\t'ear_tag_number',\n\t\t\t\t'weightClass',\n\t\t\t\t'access_date',\n\t\t\t\t'birth_date',\n\t\t\t\t'sperm_separation',\n\t\t\t\t'embryo_transfer'\n\t\t\t];\n\t\t\tcols.forEach(col => {\n\t\t\t\tlet tl = i18n.t(`request.export.header.${col}`, language);\n\t\t\t\tlet def = {\n\t\t\t\t\tkey: col\n\t\t\t\t};\n\t\t\t\tif (tl && tl !== `request.export.header.${col}`) def.label = tl;\n\t\t\t\tjobParams.customColumnHeaders.push(def);\n\t\t\t});\n\t\t\tlet job = await ExportRepo.createJob(jobParams);\n\t\t\tjob = await ExportRepo.pollUntilJobComplete(job.id, 2000, 1000 * 60 * 30);\n\t\t\tlet blob = DlHelper.dataUriToBlob(job.result);\n\t\t\tlet fileName = `export.${config.exportFileType}`;\n\t\t\tDlHelper.downloadUpload(blob, fileName);\n\t\t\tcommit('setRunning', false);\n\t\t} catch (e) {\n\t\t\tcommit('setRunning', false);\n\t\t\tconsole.error(e);\n\t\t\tthrow e;\n\t\t}\n\t},\n\n\tsaveInProcess(_, { process, editorName, inProgress, statusLabel }) {\n\t\treturn TdbRepo.setRequestStatus({ process, editorName, inProgress, statusLabel });\n\t},\n\n};\n\nconst mutations = {\n\tsetRunning(state, running) {\n\t\tstate.exportRunning = running;\n\t},\n\tsetExportType(state, type) {\n\t\tstate.exportType = type;\n\t}\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","import formfield from './request/formfield.js';\nimport main from './request/main.js';\nimport view from './request/view.js';\n\nexport default {\n\tnamespaced: true,\n\tmodules: {\n\t\tformfield,\n\t\tmain,\n\t\tview\n\t}\n};\n","import Store from '@/store/index.js';\nimport { toLocale, toAccountName } from '@/plugins/filters.js';\nimport { search } from '@/repository/system.js';\n\nfunction loadList(entityclass, attributeFilter) {\n\tif (attributeFilter) {\n\t\treturn Store.dispatch('admin/loadEntityclass', entityclass)\n\t\t\t.then(ec => {\n\t\t\t\treturn search(ec, attributeFilter);\n\t\t\t}).then(list => {\n\t\t\t\treturn {\n\t\t\t\t\tentityclass,\n\t\t\t\t\tattributeFilter,\n\t\t\t\t\tlist\n\t\t\t\t};\n\t\t\t});\n\t} else {\n\t\treturn Store.dispatch('admin/loadList', { type: entityclass })\n\t\t\t.then(list => {\n\t\t\t\treturn {\n\t\t\t\t\tentityclass,\n\t\t\t\t\tlist\n\t\t\t\t};\n\t\t\t});\n\t}\n}\n\nexport function getCachedOptionKey({ entityclass, attributeFilter }) {\n\treturn `${entityclass}${attributeFilter ? JSON.stringify(attributeFilter) : ''}`;\n}\n\nexport async function loadEcForPath(paths) {\n\tlet promises = [];\n\tfor (let e of paths) {\n\t\tif (e.keys) {\n\t\t\tfor (let key of Object.keys(e.keys)) {\n\t\t\t\tif (e.keys[key].entityclass) {\n\t\t\t\t\tpromises.push(loadList(e.keys[key].entityclass));\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (e.options) {\n\t\t\tif (e.options.entityclass) {\n\t\t\t\tpromises.push(loadList(e.options.entityclass, e.options.attributeFilter));\n\t\t\t}\n\t\t}\n\t}\n\tlet res = await Promise.all(promises);\n\treturn res.reduce((c, { entityclass, attributeFilter, list }) => {\n\t\tlet key = getCachedOptionKey({ entityclass, attributeFilter });\n\t\tc[key] = list;\n\t\treturn c;\n\t}, {});\n}\n\nexport function calculatePathOptions(paths, pathOptionsEc) {\n\tlet ret = [];\n\tpaths.forEach(e => {\n\t\tif (e.options && e.options.entityclass) {\n\t\t\tlet ecKey = getCachedOptionKey(e.options);\n\t\t\tif (!(ecKey in pathOptionsEc)) {\n\t\t\t\tconsole.log('ecKey missing', ecKey, pathOptionsEc);\n\t\t\t}\n\t\t\te.options.loaded = pathOptionsEc[ecKey];\n\t\t}\n\t\tif (e.keys) {\n\t\t\tconst keys = buildKeys(e, pathOptionsEc);\n\t\t\tcartesianProduct(keys).forEach(elem => {\n\t\t\t\tlet path = e.path;\n\t\t\t\tlet name = `${e.name} (`;\n\t\t\t\tlet nameAfter = '';\n\t\t\t\tlet variables = [];\n\t\t\t\tlet filterable = {};\n\t\t\t\telem.forEach(el => {\n\t\t\t\t\tif (el.filter) Object.assign(filterable, el.filter);\n\t\t\t\t\tfor (let [key, val] of Object.entries(el)) {\n\t\t\t\t\t\t// replace '.../:key/...' with '.../value/...' and '.../:key' with '.../value'\n\t\t\t\t\t\tlet regex = new RegExp(`/:${key}(/)|/:${key}$`, 'gu');\n\t\t\t\t\t\tpath = path.replace(regex, `/${val}$1`);\n\t\t\t\t\t\tname += `${nameAfter}${el.label}`;\n\t\t\t\t\t\tnameAfter = ', ';\n\t\t\t\t\t\tvariables.push(val);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tname += ')';\n\t\t\t\tret.push({ path, name, opt: e.options, variables, filterable });\n\t\t\t});\n\t\t} else {\n\t\t\tret.push({ path: e.path, json: { var: e.path }, name: e.name, opt: e.options });\n\t\t}\n\t});\n\treturn ret;\n}\n\nfunction cartesianProduct(arr) {\n\tlet ret = [];\n\tif (!arr || arr.length === 0) return arr;\n\tlet arr1 = arr.splice(0, 1)[0];\n\tarr = cartesianProduct(arr);\n\tfor (let i = 0, { length } = arr1; i < length; i++) {\n\t\tif (arr && arr.length) {\n\t\t\tfor (let j = 0, len = arr.length; j < len; j++) {\n\t\t\t\tret.push([arr1[i]].concat(arr[j]));\n\t\t\t}\n\t\t} else {\n\t\t\tret.push([arr1[i]]);\n\t\t}\n\t}\n\treturn ret;\n}\n\nfunction buildKeys(e, pathOptionsEc) {\n\tlet keys = [];\n\tfor (let key of Object.keys(e.keys)) {\n\t\tlet regex = new RegExp(`/:${key}/|/:${key}$`, 'gu');\n\t\tif (regex.test(e.path)) {\n\t\t\tif (e.keys[key].enum) {\n\t\t\t\tkeys.push(buildEnumKey(e.keys[key].enum, key));\n\t\t\t} else if (e.keys[key].entityclass) {\n\t\t\t\tlet ecKey = getCachedOptionKey(e.keys[key]);\n\t\t\t\tif (pathOptionsEc[ecKey]) {\n\t\t\t\t\tkeys.push(buildListKey(key, pathOptionsEc[ecKey]));\n\t\t\t\t}\n\t\t\t} else if (e.keys[key].numRange) {\n\t\t\t\tkeys.push(buildRangeKey(e.keys[key].numRange, key));\n\t\t\t}\n\t\t}\n\t}\n\treturn keys;\n}\n\nfunction buildEnumKey(en, key) {\n\treturn en.map(map => {\n\t\tlet e = { [key]: map };\n\t\tObject.defineProperty(e, 'label', {\n\t\t\tenumerable: false,\n\t\t\tvalue: map\n\t\t});\n\t\treturn e;\n\t});\n}\n\nfunction buildListKey(key, options) {\n\treturn options.map(obj => {\n\t\tlet e = { [key]: obj.id };\n\t\tlet label = '';\n\t\tif (obj.data.labels && obj.data.labels.length) label = toLocale(obj.data.labels);\n\t\telse if (obj.data.internalName) label = obj.data.internalName;\n\t\telse if (obj.data.registrationOptionName) label = toAccountName(obj.data);\n\t\tif (!label) {\n\t\t\tconsole.log('unable to find label', obj);\n\t\t\tlabel = obj.id;\n\t\t}\n\t\tlet filter = {};\n\t\tlet addToFilter = (key, val) => {\n\t\t\tif (Array.isArray(val)) {\n\t\t\t\treturn val.forEach(v => addToFilter(key, v));\n\t\t\t}\n\t\t\tif (!(key in filter)) {\n\t\t\t\tfilter[key] = [];\n\t\t\t}\n\t\t\tif (!filter[key].includes(val)) {\n\t\t\t\tfilter[key].push(val);\n\t\t\t}\n\t\t};\n\t\tif (obj.data.country) {\n\t\t\taddToFilter('country', obj.data.country);\n\t\t}\n\t\tif (obj.data.countries) {\n\t\t\taddToFilter('country', obj.data.countries);\n\t\t}\n\t\tif (obj.data.animalkind) {\n\t\t\taddToFilter('animalkind', obj.data.animalkind);\n\t\t}\n\t\tif (obj.data.animalkinds) {\n\t\t\taddToFilter('animalkind', obj.data.animalkinds);\n\t\t}\n\t\tif (obj.data.availableInCountries) {\n\t\t\taddToFilter('country', obj.data.availableInCountries);\n\t\t}\n\t\tObject.defineProperties(e, {\n\t\t\tlabel: {\n\t\t\t\tenumerable: false,\n\t\t\t\tvalue: label\n\t\t\t},\n\t\t\tfilter: {\n\t\t\t\tenumerable: false,\n\t\t\t\tvalue: filter\n\t\t\t}\n\t\t});\n\t\treturn e;\n\t});\n}\n\nfunction buildRangeKey(numRange, key) {\n\tlet min = numRange.minimum || 0;\n\tlet max = numRange.maximum || 10;\n\tlet vals = [];\n\tfor (let i=min; i<=max; i++) {\n\t\tlet e = { [key]: i };\n\t\tObject.defineProperty(e, 'label', {\n\t\t\tenumerable: false,\n\t\t\tvalue: i\n\t\t});\n\t\tvals.push(e);\n\t}\n\treturn vals;\n}\n","import { create, update, get, list, run, test } from '@/repository/bbay.js';\nimport { calculatePathOptions, loadEcForPath } from '@/util/bbay.js';\nimport moment from 'moment';\n\n\nconst state = {\n\n\trulesets: [],\n\tinitialized: false,\n\tcurrentId: null,\n\tpathOptions: [],\n\tchanged: false,\n\tsortRules: {\n\t\tattribute: 'updated',\n\t\tdirection: 'desc'\n\t},\n\tcache: [],\n\toptions: {\n\t\tagecategory: null,\n\t\tcategory1: null,\n\t\tcategory2: null\n\t}\n};\n\n\nconst getters = {\n\n\trulesets: (state) => {\n\t\treturn state.rulesets;\n\t},\n\n\tcurrentId: (state) => {\n\t\treturn state.currentId;\n\t},\n\n\truleset: (state) => {\n\t\tlet id = state.currentId;\n\t\tif (!state.initialized || !id) return null;\n\t\treturn state.rulesets.find(elem => elem.id === id);\n\t},\n\n\tchanged: (state) => {\n\t\treturn state.changed;\n\t},\n\n\tcachedDecision: (state) => (key) => {\n\t\treturn state.cache.find(e => e.key === key)?.output;\n\t},\n\n\tsortRules: (state) => {\n\t\treturn state.sortRules;\n\t},\n\n\tbyId: (state) => (id) => {\n\t\treturn state.rulesets.find(e => e.id === id);\n\t},\n\n\tfilteredPathOptions: (state) => (ctx) => {\n\t\t// console.log('filtered options for', ctx);\n\t\treturn state.pathOptions.filter(e => {\n\t\t\t// if (e.filterable) console.log(JSON.stringify(e.filterable));\n\t\t\tif (e.filterable) {\n\t\t\t\tfor (let [key, val, negated] of ctx) {\n\t\t\t\t\tif (!e.filterable[key]) continue;\n\t\t\t\t\tlet res = e.filterable[key].includes(val);\n\t\t\t\t\tif (res === negated) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t});\n\t}\n};\n\nconst actions = {\n\n\tasync getAll({ commit }) {\n\t\tlet res = await list();\n\t\tcommit('setRulesets', res);\n\t},\n\n\tasync init({ commit, state, dispatch }) {\n\t\tif (state.initialized) return;\n\t\tcommit('initialized');\n\t\tlet options = {};\n\t\toptions.agecategory = await dispatch('admin/loadList', { type: 'agecategory' }, { root: true });\n\t\toptions.category1 = await dispatch('admin/loadList', { type: 'category1' }, { root: true });\n\t\toptions.category2 = await dispatch('admin/loadList', { type: 'category2' }, { root: true });\n\t\toptions.animalusage = await dispatch('admin/loadList', { type: 'animalusage' }, { root: true });\n\t\toptions.formfields = await dispatch('admin/loadList', { type: 'requestformfield' }, { root: true });\n\t\tcommit('setOptions', options);\n\t\tawait dispatch('getAll');\n\t},\n\n\tasync update({ commit, state, getters }) {\n\t\tlet r = getters.ruleset;\n\t\tlet rules = r.rules.map(e => {\n\t\t\t// eslint-disable-next-line no-unused-vars\n\t\t\tlet { updated, ...rest } = e; // remove updated\n\t\t\treturn rest;\n\t\t});\n\t\tlet ruleset = await update({ id: state.currentId, name: r.name, rules });\n\t\tcommit('setRuleset', ruleset);\n\t},\n\n\tasync setCurrentId({ commit, getters }, { id }) {\n\t\tlet rs = getters.byId(id);\n\t\tlet pathOptionsEc = await loadEcForPath(rs.paths);\n\t\tlet pathOptions = calculatePathOptions(rs.paths, pathOptionsEc);\n\t\tcommit('setOpenRuleset', { id, pathOptions });\n\t},\n\n\tasync evaluate({ commit, getters }, { id, alias, rev, facts }) {\n\t\tlet inputKey = JSON.stringify({ id, alias, rev, facts });\n\t\tlet output = getters.cachedDecision(inputKey);\n\t\tif (!output) {\n\t\t\tlet res = await run({ ruleset: { id, rev, alias }, facts });\n\t\t\tconsole.log('bbay eval', { id, alias, rev, facts, output, res });\n\t\t\toutput = res.facts;\n\t\t\tcommit('addToResultCache', { key: inputKey, output });\n\t\t}\n\t\treturn output;\n\t}\n\n};\n\nconst mutations = {\n\n\tsetRulesets(state, rulesets) {\n\t\tstate.rulesets = rulesets;\n\t\tthis.commit('bbay/sortRules');\n\t},\n\n\tsetRuleset(state, ruleset) {\n\t\t//will always exist because we never create new ones\n\t\tlet index = state.rulesets.findIndex(elem => elem.id === state.currentId);\n\t\tstate.rulesets.splice(index, 1, ruleset);\n\t\tthis.commit('bbay/sortRules');\n\t},\n\n\tsetRule(state, { ruleIndex, rule }) {\n\t\tlet index = state.rulesets.findIndex(elem => elem.id === state.currentId);\n\t\tstate.rulesets[index].rules.splice(ruleIndex, 1, rule);\n\t\tthis.commit('bbay/sortRules');\n\t},\n\n\tdeleteRule(state, ruleIndex) {\n\t\tlet index = state.rulesets.findIndex(elem => elem.id === state.currentId);\n\t\tstate.rulesets[index].rules.splice(ruleIndex, 1);\n\t},\n\n\tsetOpenRuleset(state, { id, pathOptions }) {\n\t\tstate.currentId = id;\n\t\tstate.pathOptions = pathOptions;\n\t\tthis.commit('bbay/sortRules');\n\t},\n\n\tinitialized(state) {\n\t\tstate.initialized = true;\n\t},\n\n\tchanged(state, changed = true) {\n\t\tstate.changed = changed;\n\t},\n\n\taddToResultCache(state, { key, output }) {\n\t\tstate.cache.push({ key, output });\n\t\tif (state.cache.length > 50) state.cache.shift();\n\t},\n\n\tsetSortRules(state, { attribute, direction }) {\n\t\tlet sort = {};\n\t\tsort.attribute = attribute || state.sortRules.attribute;\n\t\tsort.direction = direction || state.sortRules.direction;\n\t\tstate.sortRules = sort;\n\t\tthis.commit('bbay/sortRules');\n\t},\n\n\tsortRules(state) {\n\t\tlet index = state.rulesets.findIndex(elem => elem.id === state.currentId);\n\t\tif (index > -1) {\n\t\t\tlet smaller = state.sortRules.direction === 'desc' ? -1 : 1;\n\t\t\tlet bigger = smaller * -1;\n\t\t\tstate.rulesets[index].rules = state.rulesets[index].rules.sort((el1, el2) => {\n\t\t\t\tif (state.sortRules.attribute === 'name') {\n\t\t\t\t\tlet name1 = el1.name.toUpperCase();\n\t\t\t\t\tlet name2 = el2.name.toUpperCase();\n\t\t\t\t\tif (name1 < name2) return smaller;\n\t\t\t\t\tif (name1 > name2) return bigger;\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\t\t\t\tif (moment(el1.updated).isSame(el2.updated)) return 0;\n\t\t\t\tif (moment(el1.updated).isBefore(el2.updated)) return smaller;\n\t\t\t\treturn bigger;\n\t\t\t});\n\t\t}\n\t},\n\n\tsetOptions(state, opts) {\n\t\tObject.keys(opts).forEach(key => {\n\t\t\tstate.options[key] = opts[key];\n\t\t});\n\t}\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","import * as MailerRepo from '@/repository/mailer';\n\nconst state = {\n\n\temailStatusCache: []\n\n};\n\nconst getters = {\n\tgetCachedVerficationStatus: state => email => {\n\t\treturn state.emailStatusCache.find(e => e.email === email);\n\t},\n\tgetSsoVerifiedEmail: (state, getters, rootState) => {\n\t\treturn rootState.auth.token.ssoParsed?.email;\n\t}\n};\n\nconst actions = {\n\n\tasync getEmailVerificationStatus({ state, commit, getters, dispatch }, email) {\n\t\tlet cached = state.emailStatusCache.find(e => e.email === email);\n\t\tif (cached) return cached.status;\n\t\tif (email === getters.getSsoVerifiedEmail) {\n\t\t\tawait dispatch('verifyViaSsoEmail');\n\t\t\tlet { status } = getters.getCachedVerficationStatus(email);\n\t\t\treturn status;\n\t\t}\n\t\tlet { status, expired } = await MailerRepo.getEmailVerificationStatus(email);\n\t\tcommit('setVerificationStatus', { email, status, expired });\n\t\treturn status;\n\t},\n\n\tasync requestVerification({ commit }, { email }) {\n\t\tlet success = await MailerRepo.requestVerification({ email });\n\t\tif (success) commit('setVerificationStatus', { email, status: 'pending' });\n\t},\n\n\tasync completeVerification({ commit }, { email, code }) {\n\t\tlet success = await MailerRepo.completeVerification({ email, code, accepted: true });\n\t\tif (success) commit('setVerificationStatus', { email, status: 'verified' });\n\t},\n\n\tasync verifyViaSsoEmail({ getters, rootState, commit }) {\n\t\tlet email = getters.getSsoVerifiedEmail;\n\t\tif (!email || getters.getCachedVerficationStatus(email)?.status === 'verified') return;\n\t\tlet status = await MailerRepo.ssoVerification({ token: rootState.auth.token.ssoToken });\n\t\tcommit('setVerificationStatus', { email, status });\n\t},\n\n\tasync checkForUnverifiedMails({ dispatch, rootState }) {\n\t\tconst accountDetails = rootState.auth.user.details;\n\t\tlet emails = new Set();\n\t\tif (accountDetails.userData.supData) {\n\t\t\taccountDetails.userData.supData.forEach(sd => {\n\t\t\t\tsd.locationsOfSale.forEach(los => {\n\t\t\t\t\tif (los.address && los.address.email) {\n\t\t\t\t\t\temails.add(los.address.email);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\t\tif (accountDetails.userData.address && accountDetails.userData.address.email) {\n\t\t\taccountDetails.userData.address.email.split(' ').forEach(e => {\n\t\t\t\temails.add(e);\n\t\t\t});\n\t\t}\n\t\tfor (let e of Array.from(emails)) {\n\t\t\tlet status = await dispatch('getEmailVerificationStatus', e);\n\t\t\tif (status !== 'verified') return true;\n\t\t}\n\t\treturn false;\n\t}\n\n};\n\nconst mutations = {\n\n\tsetVerificationStatus(state, { email, status, expired }) {\n\t\tlet entry = state.emailStatusCache.find(e => e.email === email);\n\t\tif (entry) {\n\t\t\tentry.status = status;\n\t\t\tentry.expired = !!expired;\n\t\t} else {\n\t\t\tstate.emailStatusCache.push({ email, status, expired });\n\t\t}\n\t}\n\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","\nconst state = {\n\tsettings: []\n};\n\nconst getters = {\n\tget: (state) => ({ list, key, def }) => {\n\t\tlet row = state.settings.find(e => e.list === list && e.key === key);\n\t\treturn row ? row.value : def;\n\t},\n};\n\nconst mutations = {\n\tset(state, { list, key, value }) {\n\t\tlet row = state.settings.find(e => e.list === list && e.key === key);\n\t\tif (row) {\n\t\t\trow.value = value;\n\t\t} else {\n\t\t\tstate.settings.push({\n\t\t\t\tlist, key, value\n\t\t\t});\n\t\t}\n\t},\n\treset(state) {\n\t\tstate.settings = [];\n\t}\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tmutations,\n};\n","import EventHub from '@/util/eventbus.js';\n\nconst state = {\n\thooks: [{\n\t\ttrigger: 'afterAccountSwitch',\n\t\troute: { name: 'Home' },\n\t\tonetime: false,\n\t\tsurpressOnce: false\n\t}],\n\tknownTriggers: [\n\t\t'afterAccountSwitch',\n\t\t'afterRegistration',\n\t\t'afterProfileUpdate',\n\t\t'afterOfferTosAccept'\n\t]\n};\n\nconst getters = {\n\tget: (state) => ({ list, key, def }) => {\n\t\tlet row = state.settings.find(e => e.list === list && e.key === key);\n\t\treturn row ? row.value : def;\n\t},\n};\n\nconst actions = {\n\trunHook({ state, commit }, { trigger }) {\n\t\tif (!state.knownTriggers.includes(trigger)) throw new Error(`unknown trigger: ${trigger}`);\n\t\tlet hook = state.hooks.find(e => e.trigger === trigger);\n\t\tconsole.log('runHook', { trigger, hook: hook ? JSON.parse(JSON.stringify(hook)): 'none' });\n\t\tif (!hook) return false;\n\t\tif (hook.surpressOnce) {\n\t\t\tcommit('setHook', { trigger, surpressOnce: false });\n\t\t\treturn false;\n\t\t}\n\t\tif (hook.onetime) {\n\t\t\tcommit('removeHook', { trigger });\n\t\t}\n\t\tlet route = hook.route;\n\t\tEventHub.$emit('navigate', route);\n\t\treturn true;\n\t},\n\tsurpressAccountSwitchHook({ commit }) {\n\t\tcommit('setHook', { trigger: 'afterAccountSwitch', surpressOnce: true });\n\t}\n};\n\nconst mutations = {\n\tsetHook(state, params) {\n\t\tif (!state.knownTriggers.includes(params.trigger)) throw new Error(`unknown trigger: ${params.trigger}`);\n\t\tlet existing = state.hooks.find(h => h.trigger === params.trigger);\n\t\tif (!existing) {\n\t\t\tif (!params.route) throw new Error('cannot create route hook, no route given');\n\t\t\texisting = params;\n\t\t\tstate.hooks.push(existing);\n\t\t} else {\n\t\t\t['route', 'onetime', 'surpressOnce'].forEach(key => {\n\t\t\t\tif (typeof params[key] !== 'undefined') {\n\t\t\t\t\texisting[key] = params[key];\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t},\n\tremoveHook(state, { trigger }) {\n\t\tif (!state.knownTriggers.includes(trigger)) throw new Error(`unknown trigger: ${trigger}`);\n\t\tstate.hooks = state.hooks.filter(e => e.trigger !== trigger);\n\t},\n\tremoveAllHooks(state) {\n\t\tstate.hooks = [];\n\t}\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations,\n};\n","import { search } from '@/repository/system.js';\nimport { createPatch } from 'rfc6902';\n\nconst state = {\n\n\tloaded: []\n\n};\n\nconst getters = {\n\n\tlabel: (state, getters, rootState) => (key) => {\n\t\tlet lang = rootState.base.uiLocale;\n\t\treturn getters.labelForLang(key, lang);\n\t},\n\n\tlabelForLang: (state) => (key, lang) => {\n\t\tlet pkg = state.loaded.find(e => e.data.language === lang);\n\t\tif (!pkg) return '';\n\t\tlet items = pkg.data.entries;\n\t\tlet item = items.find(e => e.key === key);\n\t\tif (!item) return '';\n\t\treturn item.label;\n\t},\n\n\thasChanged: (state) => ({ language, entries }) => {\n\t\tlet oldPkg = state.loaded.find(e => e.data.language === language);\n\t\tif (!oldPkg) return entries.length > 0;\n\t\tlet patch = createPatch(oldPkg.data, { language, entries });\n\t\treturn patch.length > 0;\n\t},\n\n\tlanguagesLoaded: (state) => {\n\t\treturn state.loaded.map(e => e.data.language);\n\t},\n\n\tknownKeys: (state) => {\n\t\treturn Array.from(new Set(state.loaded.map(e => {\n\t\t\treturn e.data.entries.map(ee => ee.key);\n\t\t}).flat()));\n\t}\n\n};\n\nconst actions = {\n\n\tasync loadLanguage({ commit, dispatch }, { language }) {\n\t\tif (state.loaded.find(e => e.data.language === language)) return;\n\t\tlet ec = await dispatch('admin/loadEntityclass', 'i18nlabels', { root: true });\n\t\tlet list = await search(ec, { field: '/data/language', comparison: 'eq', value: language }, { limit: 1 });\n\t\tcommit('addData', list);\n\t},\n\n\tasync loadAllLanguages({ commit, dispatch }) {\n\t\tlet ec = await dispatch('admin/loadEntityclass', 'i18nlabels', { root: true });\n\t\tlet list = await search(ec, null, { limit: 100 });\n\t\tcommit('addData', list);\n\t},\n\n\tasync save({ commit, state, dispatch }, { language, entries }) {\n\t\tlet oldPkg = state.loaded.find(e => e.data.language === language);\n\t\tlet res = await dispatch('admin/saveEntry', { entity: oldPkg, newData: { language, entries }, type: 'i18nlabels' }, { root: true });\n\t\tif (res) commit('addData', [res]);\n\t},\n\n\n\n};\n\nconst mutations = {\n\n\taddData(state, packages) {\n\t\tfor (let pkg of packages) {\n\t\t\tlet exists = state.loaded.findIndex(e => e.data.language === pkg.data.language);\n\t\t\tif (exists > -1) {\n\t\t\t\tstate.loaded.splice(exists, 1);\n\t\t\t}\n\t\t\tstate.loaded.push(pkg);\n\t\t}\n\t}\n\n};\n\nexport default {\n\tnamespaced: true,\n\tstate,\n\tgetters,\n\tactions,\n\tmutations\n};\n","import Vue from 'vue';\nimport Vuex from 'vuex';\nimport { DOMAIN, ADMIN } from '../util/env';\nimport createPersistedState from 'vuex-persistedstate';\n\nimport base from './modules/base.js';\nimport admin from './modules/admin.js';\nimport upload from './modules/upload.js';\nimport notification from './modules/notification.js';\nimport auth from './modules/auth.js';\nimport country from './modules/country.js';\nimport offer from './modules/offer.js';\nimport related from './modules/related.js';\nimport location from './modules/location.js';\nimport page from './modules/page.js';\nimport region from './modules/region.js';\nimport request from './modules/request.js';\nimport bbay from './modules/bbay.js';\nimport mailer from './modules/mailer.js';\nimport list from './modules/list.js';\nimport redirect from './modules/redirect.js';\nimport i18n from './modules/i18n.js';\n\nVue.use(Vuex);\n\n/* saves state in localStorage. path does not yet exist */\nconst persistence = createPersistedState({\n\tkey: `${DOMAIN}_${ADMIN?'ADMIN':'USER'}_auth_locale`,\n\tstorage: window.localStorage,\n\t// WARNING: getter on rehydrated properties are WRONG (do not update) -> use $store.state.[...]\n\tpaths: ['auth.token', 'base.uiLocale', 'list'],\n\t// rehydrated(rehydratedState) {\n\t// }\n});\nconst logger = store => {\n\t// called when the store is initialized\n\tstore.subscribe((mutation) => {\n\t\tconsole.debug('mutation: ', mutation);\n\t});\n};\n\nconst plugins = process.env.NODE_ENV === 'development'\n\t? [ persistence, logger ]\n\t: [ persistence ];\n\nexport default new Vuex.Store({\n\tstrict: true,\n\tplugins,\n\tmodules: {\n\t\tbase,\n\t\tadmin,\n\t\tupload,\n\t\tnotification,\n\t\tauth,\n\t\tcountry,\n\t\toffer,\n\t\trelated,\n\t\tlocation,\n\t\tpage,\n\t\tregion,\n\t\trequest,\n\t\tmailer,\n\t\tredirect,\n\t\tlist,\n\t\ti18n,\n\t\tbbay\n\t}\n});\n","import Store from '@/store/main.js';\n\nStore.watch(\n\t() => Store.state.offer.search.filter.animalkind,\n\t() => {\n\t\tStore.dispatch('offer/search/setAnimalusageOptions');\n\t\tStore.dispatch('offer/search/setOffergroupOptions');\n\t\tStore.dispatch('offer/search/setAgeCategoryOptions');\n\t\tStore.dispatch('offer/search/setCategory1Options');\n\t\tStore.dispatch('offer/search/setCategory2Options');\n\t\tStore.dispatch('offer/search/setAsoOptions');\n\n\t\tStore.commit('request/main/setSelectedType', null);\n\t}\n);\n\nStore.watch(\n\t() => Store.state.offer.search.filter.offergroup,\n\t() => {\n\t\tStore.dispatch('offer/search/checkOfferSpecifications');\n\t}\n);\n\nStore.watch(\n\t() => Store.state.offer.search.spotMarketSwitch,\n\t() => {\n\t\tStore.dispatch('offer/search/init');\n\t}\n);\n","import Store from '@/store/main.js';\n\nStore.watch(\n\t() => Store.getters['auth/token/account'],\n\t() => {\n\t\tStore.commit('offer/search/resetAllFilters');\n\t\tStore.commit('request/main/reset');\n\t\tStore.commit('offer/search/resetMode');\n\t\tStore.commit('list/reset');\n\t\tStore.commit('request/view/setExportType', '');\n\t}\n);\n","import Store from '@/store/main.js';\nimport EventHub from '@/util/eventbus.js';\n\nEventHub.$on('page.change', ({ from, to }) => {\n\t// console.log('page.change', { from, to });\n\tif (from.name === to.name) return;\n\tStore.commit('related/clearEntities');\n\tStore.commit('related/clearAllIds');\n\tStore.dispatch('admin/clearCache');\n});\n","import Store from '@/store/main.js';\n\nStore.watch(\n\t() => Store.state.request.main.agrSelected,\n\t() => {\n\t\tStore.dispatch('request/main/loadAgrData');\n\t}\n);\n","import Store from '@/store/main.js';\n\nStore.watch(\n\t() => Store.state.base.uiLocale,\n\t() => {\n\t\tStore.dispatch('i18n/loadLanguage', { language: Store.state.base.uiLocale });\n\t}\n);\n\n","import store from './main.js';\nimport './hooks/offers.js';\nimport './hooks/auth.js';\nimport './hooks/events.js';\nimport './hooks/request.js';\nimport './hooks/language.js';\n\nexport default store;\n","/*\n * array utility functions\n */\n\n/* use as [].filter to create unique items */\nexport function onlyUnique(value, index, self) {\n\treturn self.indexOf(value) === index;\n}\n\nexport function alphanumericSort(a, b) {\n\tif (a.text < b.text) return -1;\n\tif (a.text > b.text) return 1;\n\treturn 0;\n}\n","import { saveAs } from 'file-saver';\nimport { i18n } from '@/plugins/i18n';\n\nexport function base64EncodeFile(file) {\n\treturn new Promise((resolve, reject) => {\n\t\tconst reader = new FileReader();\n\t\treader.readAsDataURL(file);\n\t\treader.onload = () => resolve(reader.result);\n\t\treader.onerror = error => reject(error);\n\t});\n}\n\nexport function base64DecodeFile(encodedFile, fileName) {\n\tlet dataUrlParts = encodedFile.split(',');\n\n\tlet mimeType;\n\tlet decoded;\n\n\tif (dataUrlParts.length > 1) {\n\t\tmimeType = dataUrlParts[0].match(/:(?:.*?);/u)[1];\n\t\tdecoded = atob(dataUrlParts[1]);\n\t} else {\n\t\tdecoded = atob(dataUrlParts[0]);\n\t}\n\n\tlet bits = new Uint8Array(decoded.length);\n\n\tfor (let i = 0; i < decoded.length; i++) {\n\t\tbits[i] = decoded.charCodeAt(i);\n\t}\n\n\tconst options = {};\n\tif (mimeType) {\n\t\toptions.type = mimeType;\n\t}\n\n\treturn new File([bits], fileName, options);\n}\n\nexport function dataUriToBlob(dataURI) {\n\t// convert base64 to raw binary data held in a string\n\t// doesn't handle URLEncoded DataURIs - see SO answer #6850276 for code that does this\n\tlet mime = 'application/octet-stream';\n\tlet content;\n\tif (dataURI.substr(0, 5) === 'data:') {\n\t\tlet match = dataURI.match(/^data:(?[\\w/\\-.]+)(;(?\\w+))?,(?.*$)/s);\n\t\tif (!match) throw new Error(i18n.t('util.invalidDataUri'));\n\t\tcontent = match.groups.encoding === 'base64' ? atob(match.groups.data) : match.groups.data;\n\t\tmime = match.groups.mime;\n\t} else {\n\t\tcontent = dataURI;\n\t}\n\t// write the bytes of the string to an ArrayBuffer\n\tlet ab = new ArrayBuffer(content.length);\n\t// create a view into the buffer\n\tlet ia = new Uint8Array(ab);\n\t// set the bytes of the buffer to the correct values\n\tfor (let i = 0; i < content.length; i++) {\n\t\tia[i] = content.charCodeAt(i);\n\t}\n\t// write the ArrayBuffer to a blob, and you're done\n\tlet blob = new Blob([ab], { type: mime });\n\treturn blob;\n}\n\nexport function downloadUpload(blob, name) {\n\ttry {\n\t\tlet isFileSaverSupported = !!new Blob();\n\t} catch {\n\t\tconsole.log(i18n.t('util.noFileSaverSupport'));\n\t\treturn;\n\t}\n\tsaveAs(blob, name);\n}\n","/*\n * central place to import env vars and add default value to them\n */\nconst trueWords = [ 'yes', '1', 'ja', 'on' ];\n\nexport const BaseUrl = process.env.VUE_APP_BASE_URL || 'http://localhost/tdbdev/';\nexport const LogUrl = process.env.VUE_APP_LOG_URL || 'http://localhost/csp/';\nexport const AdminParty = trueWords.includes(process.env.VUE_APP_ADMIN_PARTY);\nexport const IsLive = BaseUrl.includes('api.fibl-services.org');\nexport const EtrackerCode = process.env.VUE_APP_ETRACKER_CODE || null;\nexport const CommitSha = process.env.VUE_APP_COMMIT_SHA || 'dev';\n\nlet tmp = BaseUrl.replace(/\\/$/, '');\nexport const DOMAIN = tmp.substr(tmp.lastIndexOf('/') + 1);\nexport const ADMIN = document.location.pathname.includes('/admin') || document.location.hostname.includes('admin');\n\nexport const KeycloakInfo = process.env.VUE_APP_KEYCLOAK_INFO\n\t? JSON.parse(process.env.VUE_APP_KEYCLOAK_INFO)\n\t: {\n\t\t'realm': 'zdb',\n\t\t'url': 'http://localhost/auth/',\n\t\t'clientId': 'zdb'\n\t};\n","/*\n * eventbus singleton to distribute events across the whole app\n */\nimport Vue from 'vue';\n\nconst bus = new Vue();\n\nexport default bus;\n","import { toLocale } from '@/plugins/filters.js';\nimport { i18n } from '@/plugins/i18n';\n\nexport const offerFieldComponent = {\n\t'select': {\n\t\ttype: 'multi-select-wrap',\n\t\toptions: {\n\t\t\t'group-values': 'group',\n\t\t\t'group-label': 'groupLabel',\n\t\t\t'track-by': 'id',\n\t\t\t'label': 'label',\n\t\t},\n\t},\n\t'multiselect': {\n\t\ttype: 'multi-select-wrap',\n\t\toptions: {\n\t\t\t'multiple': true,\n\t\t\t'group-values': 'group',\n\t\t\t'group-label': 'groupLabel',\n\t\t\t'track-by': 'id',\n\t\t\t'label': 'label',\n\t\t},\n\t},\n\t'singleline-textfield': { type: 'b-form-input' },\n\t'textfield': { type: 'b-form-textarea' },\n\t'multitext': { type: 'multi-text', options: { multiline: true }},\n\t'singleline-multitext': { type: 'multi-text' },\n\t'checkbox': { type: 'b-form-checkbox' },\n\t'datefield': { type: 'b-form-datepicker', options: i18n.t('datepicker') },\n\t'numberfield': { type: 'b-form-input', options: { type: 'number', min: 0 }},\n};\n\nexport const inputTypeMap = {\n\t'select': 'selectValue',\n\t'multiselect': 'multiselectValue',\n\t'multitext': 'multitextValue',\n\t'singleline-multitext': 'multitextValue',\n\t'singleline-textfield': 'stringValue',\n\t'textfield': 'stringValue',\n\t'checkbox': 'booleanValue',\n\t'datefield': 'dateValue',\n\t'numberfield': 'numberValue'\n};\n\nexport function getDynamicFieldOptions(field) {\n\tlet options = field.data.options;\n\tlet groups = field.data.groups;\n\toptions = options.filter(x => x.enabled);\n\tlet usedGroups = [];\n\tlet ungrouped;\n\toptions.forEach(opt => {\n\t\tif (opt.group && !usedGroups.includes(opt.group)) {\n\t\t\tusedGroups.push(opt.group);\n\t\t} else if (!opt.group) ungrouped = true;\n\t});\n\tlet ret = [];\n\tusedGroups.forEach(grp => {\n\t\tlet group = options.filter(opt => opt.group === grp);\n\t\tlet groupLabel = toLocale(groups?.filter(x => x.id === grp)[0].labels);\n\t\tgroup = group.map(g => ({ id: g.id, label: toLocale(g.labels) }));\n\t\tret.push({ groupLabel, group });\n\t});\n\tif (ungrouped) {\n\t\tlet group = options.filter(opt => !opt.group);\n\t\tgroup = group.map(g => ({ id: g.id, label: toLocale(g.labels) }));\n\t\tret.push({ groupLabel: '-', group });\n\t}\n\treturn ret;\n}\n","import { AdminParty } from './env.js';\n/*\n * extra cache for setting the current JWT\n * needed because the request.js cannot require the store\n * without creating a recursive dependency\n */\nlet currentToken = null;\n\nexport function getToken() {\n\tif (AdminParty) return null;\n\t// console.log('getToken', currentToken && currentToken.length > 0);\n\treturn currentToken;\n}\n\nexport function setToken(t) {\n\t// console.log('setToken', !!t);\n\tcurrentToken = t;\n}\n","import EventBus from '@/util/eventbus.js';\nimport { BaseUrl, IsLive, LogUrl } from './env.js';\nimport { getToken } from './jwt-cache.js';\nimport i18n from '@/plugins/i18n.js';\n\n/*\n * all requests to the server flow through here\n * this should only be called from a /repository/\n */\n\nlet backoffTimer = 0;\nconst backoffInterval = 500;\n\nasync function request(path, data, post, auth, surpressError, allowEmptyPayload, hideProgress, retries) {\n\tif (!data && !allowEmptyPayload) data = {};\n\tif (isNaN(retries)) retries = 0;\n\tlet url = BaseUrl + path;\n\tlet opts = {};\n\topts.mode = 'cors';\n\t// opts.cache = 'no-cache';\n\topts.headers = { 'Content-Type': 'application/json' };\n\topts.redirect = 'follow';\n\tif (auth) {\n\t\topts.headers.Authorization = `Bearer ${auth}`;\n\t}\n\tif (!post) {\n\t\topts.method = 'GET';\n\t\tif (typeof payload === 'undefined') {\n\t\t\turl += `?__payload=${JSON.stringify(data)}`;\n\t\t}\n\t} else {\n\t\topts.method = 'POST';\n\t\topts.body = JSON.stringify(data);\n\t}\n\tEventBus.$emit('request.start', { url, opts, hideProgress });\n\tconst res = await global.fetch(url, opts);\n\tif (res.status === 429) {\t//too many requests\n\t\tif (retries > 5) {\n\t\t\tconst error = new Error('failed after 5 retries');\n\t\t\terror.url = url;\n\t\t\tEventBus.$emit('error', error);\n\t\t\tEventBus.$emit('request.end', { url, opts, error });\n\t\t\tthrow error;\n\t\t}\n\t\treturn retry(path, data, post, auth, surpressError, allowEmptyPayload, true, retries+1);\n\t}\n\ttry {\n\t\tif (res.status > 299) throw new Error(`http status ${res.status}`);\n\t\tlet ct = res.headers.get('Content-Type');\n\t\tif (!ct.includes('application/json')) throw new Error(`invalid content-type was returned: ${ct}`);\n\t\tconst json = await res.json();\n\t\tif (!json.ok) {\n\t\t\tlet error = new Error();\n\t\t\terror.message = json.message ? json.message : 'unknown error';\n\t\t\tif (error.message.includes('Invalid authentication header')) {\n\t\t\t\terror.message = i18n.t('default.common.error.invalidAuth');\n\t\t\t}\n\t\t\tif (!json.message) console.error('unknown error', json);\n\t\t\tif (json.details) error.message += `\\n - ${json.details}`;\n\t\t\tif (json.previous) error.previous = json.previous;\n\t\t\tif (json.stack) error.servicestack = json.stack;\n\t\t\terror.code = json.code;\n\t\t\terror.reqId = json.id;\n\t\t\terror.url = url;\n\t\t\tthrow error;\n\t\t}\n\t\tEventBus.$emit('request.end', { url, opts, json });\n\t\tif (backoffTimer > 0) backoffTimer -= backoffInterval;\n\t\treturn json.data;\n\t} catch (error) {\n\t\tif (!surpressError && !IsLive) {\n\t\t\tif (!error.url) error.url = url;\n\t\t\tEventBus.$emit('error', error);\n\t\t}\n\t\tEventBus.$emit('request.end', { url, opts, error });\n\t\tthrow error;\n\t}\n}\n\nasync function retry(path, data, post, auth, surpressError, allowEmptyPayload, hideProgress, retries) {\n\tbackoffTimer += backoffInterval;\n\tawait sleep(backoffTimer);\n\treturn request(path, data, post, auth, surpressError, allowEmptyPayload, hideProgress, retries);\n}\n\nfunction sleep(ms) {\n\treturn new Promise(function(resolve) {\n\t\tsetTimeout(resolve, ms);\n\t});\n}\n\nexport function get(path, data, auth, supe) {\n\tif (!auth) auth = getToken();\n\treturn request(path, data, false, auth, supe);\n}\n\nexport function post(path, data, auth, supe, emptyPayload, hideProgress) {\n\tif (!auth) auth = getToken();\n\treturn request(path, data, true, auth, supe, emptyPayload, hideProgress);\n}\n\nexport function log(data) {\n\tglobal.fetch(LogUrl, {\n\t\tmethod: 'POST',\n\t\theaders: {\n\t\t\t'Content-type': 'application/json'\n\t\t},\n\t\tbody: JSON.stringify(data)\n\t});\n}\n","var map = {\n\t\"./af\": 2496,\n\t\"./af.js\": 2496,\n\t\"./ar\": 186,\n\t\"./ar-dz\": 6881,\n\t\"./ar-dz.js\": 6881,\n\t\"./ar-kw\": 6265,\n\t\"./ar-kw.js\": 6265,\n\t\"./ar-ly\": 451,\n\t\"./ar-ly.js\": 451,\n\t\"./ar-ma\": 8625,\n\t\"./ar-ma.js\": 8625,\n\t\"./ar-sa\": 8819,\n\t\"./ar-sa.js\": 8819,\n\t\"./ar-tn\": 7092,\n\t\"./ar-tn.js\": 7092,\n\t\"./ar.js\": 186,\n\t\"./az\": 4421,\n\t\"./az.js\": 4421,\n\t\"./be\": 7067,\n\t\"./be.js\": 7067,\n\t\"./bg\": 3871,\n\t\"./bg.js\": 3871,\n\t\"./bm\": 4242,\n\t\"./bm.js\": 4242,\n\t\"./bn\": 8189,\n\t\"./bn-bd\": 2507,\n\t\"./bn-bd.js\": 2507,\n\t\"./bn.js\": 8189,\n\t\"./bo\": 5799,\n\t\"./bo.js\": 5799,\n\t\"./br\": 7803,\n\t\"./br.js\": 7803,\n\t\"./bs\": 8434,\n\t\"./bs.js\": 8434,\n\t\"./ca\": 4581,\n\t\"./ca.js\": 4581,\n\t\"./cs\": 8004,\n\t\"./cs.js\": 8004,\n\t\"./cv\": 4464,\n\t\"./cv.js\": 4464,\n\t\"./cy\": 163,\n\t\"./cy.js\": 163,\n\t\"./da\": 803,\n\t\"./da.js\": 803,\n\t\"./de\": 233,\n\t\"./de-at\": 7607,\n\t\"./de-at.js\": 7607,\n\t\"./de-ch\": 6777,\n\t\"./de-ch.js\": 6777,\n\t\"./de.js\": 233,\n\t\"./dv\": 6969,\n\t\"./dv.js\": 6969,\n\t\"./el\": 9618,\n\t\"./el.js\": 9618,\n\t\"./en-au\": 9245,\n\t\"./en-au.js\": 9245,\n\t\"./en-ca\": 5036,\n\t\"./en-ca.js\": 5036,\n\t\"./en-gb\": 1438,\n\t\"./en-gb.js\": 1438,\n\t\"./en-ie\": 6053,\n\t\"./en-ie.js\": 6053,\n\t\"./en-il\": 134,\n\t\"./en-il.js\": 134,\n\t\"./en-in\": 847,\n\t\"./en-in.js\": 847,\n\t\"./en-nz\": 1363,\n\t\"./en-nz.js\": 1363,\n\t\"./en-sg\": 9022,\n\t\"./en-sg.js\": 9022,\n\t\"./eo\": 8990,\n\t\"./eo.js\": 8990,\n\t\"./es\": 9817,\n\t\"./es-do\": 8155,\n\t\"./es-do.js\": 8155,\n\t\"./es-mx\": 952,\n\t\"./es-mx.js\": 952,\n\t\"./es-us\": 9358,\n\t\"./es-us.js\": 9358,\n\t\"./es.js\": 9817,\n\t\"./et\": 5396,\n\t\"./et.js\": 5396,\n\t\"./eu\": 4338,\n\t\"./eu.js\": 4338,\n\t\"./fa\": 7030,\n\t\"./fa.js\": 7030,\n\t\"./fi\": 2292,\n\t\"./fi.js\": 2292,\n\t\"./fil\": 3578,\n\t\"./fil.js\": 3578,\n\t\"./fo\": 8900,\n\t\"./fo.js\": 8900,\n\t\"./fr\": 6067,\n\t\"./fr-ca\": 8362,\n\t\"./fr-ca.js\": 8362,\n\t\"./fr-ch\": 9404,\n\t\"./fr-ch.js\": 9404,\n\t\"./fr.js\": 6067,\n\t\"./fy\": 6742,\n\t\"./fy.js\": 6742,\n\t\"./ga\": 8152,\n\t\"./ga.js\": 8152,\n\t\"./gd\": 6920,\n\t\"./gd.js\": 6920,\n\t\"./gl\": 7234,\n\t\"./gl.js\": 7234,\n\t\"./gom-deva\": 2759,\n\t\"./gom-deva.js\": 2759,\n\t\"./gom-latn\": 7054,\n\t\"./gom-latn.js\": 7054,\n\t\"./gu\": 8166,\n\t\"./gu.js\": 8166,\n\t\"./he\": 8927,\n\t\"./he.js\": 8927,\n\t\"./hi\": 2153,\n\t\"./hi.js\": 2153,\n\t\"./hr\": 9329,\n\t\"./hr.js\": 9329,\n\t\"./hu\": 2782,\n\t\"./hu.js\": 2782,\n\t\"./hy-am\": 5023,\n\t\"./hy-am.js\": 5023,\n\t\"./id\": 6655,\n\t\"./id.js\": 6655,\n\t\"./is\": 0,\n\t\"./is.js\": 0,\n\t\"./it\": 5107,\n\t\"./it-ch\": 3045,\n\t\"./it-ch.js\": 3045,\n\t\"./it.js\": 5107,\n\t\"./ja\": 9175,\n\t\"./ja.js\": 9175,\n\t\"./jv\": 4853,\n\t\"./jv.js\": 4853,\n\t\"./ka\": 8684,\n\t\"./ka.js\": 8684,\n\t\"./kk\": 312,\n\t\"./kk.js\": 312,\n\t\"./km\": 1271,\n\t\"./km.js\": 1271,\n\t\"./kn\": 7256,\n\t\"./kn.js\": 7256,\n\t\"./ko\": 4833,\n\t\"./ko.js\": 4833,\n\t\"./ku\": 5258,\n\t\"./ku.js\": 5258,\n\t\"./ky\": 3430,\n\t\"./ky.js\": 3430,\n\t\"./lb\": 7665,\n\t\"./lb.js\": 7665,\n\t\"./lo\": 2238,\n\t\"./lo.js\": 2238,\n\t\"./lt\": 920,\n\t\"./lt.js\": 920,\n\t\"./lv\": 8769,\n\t\"./lv.js\": 8769,\n\t\"./me\": 818,\n\t\"./me.js\": 818,\n\t\"./mi\": 5722,\n\t\"./mi.js\": 5722,\n\t\"./mk\": 7117,\n\t\"./mk.js\": 7117,\n\t\"./ml\": 9904,\n\t\"./ml.js\": 9904,\n\t\"./mn\": 8590,\n\t\"./mn.js\": 8590,\n\t\"./mr\": 9544,\n\t\"./mr.js\": 9544,\n\t\"./ms\": 176,\n\t\"./ms-my\": 8850,\n\t\"./ms-my.js\": 8850,\n\t\"./ms.js\": 176,\n\t\"./mt\": 291,\n\t\"./mt.js\": 291,\n\t\"./my\": 4830,\n\t\"./my.js\": 4830,\n\t\"./nb\": 4893,\n\t\"./nb.js\": 4893,\n\t\"./ne\": 8782,\n\t\"./ne.js\": 8782,\n\t\"./nl\": 8337,\n\t\"./nl-be\": 2297,\n\t\"./nl-be.js\": 2297,\n\t\"./nl.js\": 8337,\n\t\"./nn\": 8272,\n\t\"./nn.js\": 8272,\n\t\"./oc-lnc\": 277,\n\t\"./oc-lnc.js\": 277,\n\t\"./pa-in\": 6198,\n\t\"./pa-in.js\": 6198,\n\t\"./pl\": 5231,\n\t\"./pl.js\": 5231,\n\t\"./pt\": 3141,\n\t\"./pt-br\": 9626,\n\t\"./pt-br.js\": 9626,\n\t\"./pt.js\": 3141,\n\t\"./ro\": 2797,\n\t\"./ro.js\": 2797,\n\t\"./ru\": 48,\n\t\"./ru.js\": 48,\n\t\"./sd\": 23,\n\t\"./sd.js\": 23,\n\t\"./se\": 7339,\n\t\"./se.js\": 7339,\n\t\"./si\": 2851,\n\t\"./si.js\": 2851,\n\t\"./sk\": 9764,\n\t\"./sk.js\": 9764,\n\t\"./sl\": 646,\n\t\"./sl.js\": 646,\n\t\"./sq\": 1751,\n\t\"./sq.js\": 1751,\n\t\"./sr\": 9016,\n\t\"./sr-cyrl\": 1368,\n\t\"./sr-cyrl.js\": 1368,\n\t\"./sr.js\": 9016,\n\t\"./ss\": 1943,\n\t\"./ss.js\": 1943,\n\t\"./sv\": 5095,\n\t\"./sv.js\": 5095,\n\t\"./sw\": 6014,\n\t\"./sw.js\": 6014,\n\t\"./ta\": 1571,\n\t\"./ta.js\": 1571,\n\t\"./te\": 4819,\n\t\"./te.js\": 4819,\n\t\"./tet\": 8646,\n\t\"./tet.js\": 8646,\n\t\"./tg\": 8641,\n\t\"./tg.js\": 8641,\n\t\"./th\": 5714,\n\t\"./th.js\": 5714,\n\t\"./tk\": 7082,\n\t\"./tk.js\": 7082,\n\t\"./tl-ph\": 9830,\n\t\"./tl-ph.js\": 9830,\n\t\"./tlh\": 8757,\n\t\"./tlh.js\": 8757,\n\t\"./tr\": 3571,\n\t\"./tr.js\": 3571,\n\t\"./tzl\": 6785,\n\t\"./tzl.js\": 6785,\n\t\"./tzm\": 4924,\n\t\"./tzm-latn\": 9126,\n\t\"./tzm-latn.js\": 9126,\n\t\"./tzm.js\": 4924,\n\t\"./ug-cn\": 2134,\n\t\"./ug-cn.js\": 2134,\n\t\"./uk\": 3350,\n\t\"./uk.js\": 3350,\n\t\"./ur\": 3397,\n\t\"./ur.js\": 3397,\n\t\"./uz\": 8556,\n\t\"./uz-latn\": 3562,\n\t\"./uz-latn.js\": 3562,\n\t\"./uz.js\": 8556,\n\t\"./vi\": 7751,\n\t\"./vi.js\": 7751,\n\t\"./x-pseudo\": 1505,\n\t\"./x-pseudo.js\": 1505,\n\t\"./yo\": 5943,\n\t\"./yo.js\": 5943,\n\t\"./zh-cn\": 4186,\n\t\"./zh-cn.js\": 4186,\n\t\"./zh-hk\": 2243,\n\t\"./zh-hk.js\": 2243,\n\t\"./zh-mo\": 5437,\n\t\"./zh-mo.js\": 5437,\n\t\"./zh-tw\": 3843,\n\t\"./zh-tw.js\": 3843\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 6700;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + ({\"328\":\"admin\",\"378\":\"user\"}[chunkId] || chunkId) + \".\" + {\"328\":\"2901fb35\",\"378\":\"e4a01ffb\",\"423\":\"5f00c26f\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"css/\" + {\"328\":\"admin\",\"378\":\"user\"}[chunkId] + \".\" + {\"328\":\"9a916012\",\"378\":\"ee86d829\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"tdb2:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/\";","if (typeof document === \"undefined\") return;\nvar createStylesheet = function(chunkId, fullhref, oldTag, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tif (linkTag.parentNode) linkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tif (oldTag) {\n\t\toldTag.parentNode.insertBefore(linkTag, oldTag.nextSibling);\n\t} else {\n\t\tdocument.head.appendChild(linkTag);\n\t}\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, null, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"328\":1,\"378\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunktdb2\"] = self[\"webpackChunktdb2\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], function() { return __webpack_require__(6636); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["render","_vm","this","_c","_self","domProps","_s","content","staticRenderFns","name","components","filters","props","usage","type","String","required","computed","language","$store","state","base","uiLocale","languageFallback","fallbackLocale","p","getters","page","data","ret","find","e","lang","console","log","$t","watch","mounted","loadContent","methods","dispatch","component","Vue","use","BootstrapVue","IconsPlugin","Vuelidate","library","add","faGlobe","faTrash","FontAwesomeIcon","LMap","LTileLayer","LMarker","LCircleMarker","LPopup","LTooltip","LIcon","Icon","Default","prototype","_getIconUrl","mergeOptions","iconRetinaUrl","require","iconUrl","shadowUrl","attrs","isMaintenance","isCountrySelected","staticClass","_v","_f","countryLabels","role","_l","animalmenusTopLevel","top","componentType","key","id","params","animalkind","topMenuLabel","_e","class","animalkindLabelWhenSubmenu","$route","toMenuIds","submenuItems","entry","labels","subMenus","animalkindOptions","animalkinds","animals","JSON","parse","stringify","sort","a","b","localeA","toLocale","toLowerCase","localeB","animalmenus","filter","includes","sorting","created","buildNav","toLocaleFn","forEach","concat","onlyUnique","menu","label","animalLabel","ids","map","submenu","el","ak","adminParty","groups","group","links","link","route","path","tl","isLoggedIn","accountName","userDeactivated","accountDetails","showProfile","on","logout","switchableAccounts","length","acc","$event","switchAccount","toAccountName","staticData","gotoLogin","hasAccount","account","unregister","userData","insData","deactivatedOn","registrationOptionName","ins","address","Login","AdminParty","MenuConfig","groupKey","country","excludeRoles","countryHas","rule","accountNeedsOfferAutApproval","roles","localeCompare","languages","i","selectLang","commit","MainMenu","LangSelect","NavAnimalkind","opacity","staticStyle","loading","reductionPerTick","onStart","EventBus","$on","onEnd","tick","beforeDestroy","$off","Math","min","window","requestAnimationFrame","notificationsToShow","showStoreEvent","addNotification","title","body","variant","tmp","isStatus","$bvToast","toast","toaster","autoHideDelay","PageContent","MainNav","LoadingIndicator","Notifications","MainFooter","countries","select","nv","getBestUrl","list","domains","current","document","location","hostname","filtered","protocol","hash","url","href","LayoutDefaut","LayoutCountrySelect","LayoutMaintenance","maintenanceMode","checkDownload","checkLogin","query","logmein","$router","resolve","history","pushState","confirm","substring","idAndName","newRoute","replace","re","test","dlConfirm","message","options","okVariant","okTitle","cancelTitle","$bvModal","msgBoxConfirm","attachment","blob","base64DecodeFile","downloadUpload","VueRouter","waitForUserLoaded","Promise","res","Store","async","createRouter","prefix","admin","routes","adminRoutes","default","all","then","flatMap","router","mode","beforeEach","to","from","next","meta","EventHub","$emit","afterEach","_etracker","EtrackerCode","et_eC_Wrapper","et_et","checkForMaintenance","store","getExtraLogData","ua","navigator","userAgent","plat","platform","loc","sx","screen","width","sy","height","app","build","CommitSha","logError","initialize","onerror","source","lineno","colno","error","maintenance","time","Date","now","config","errorHandler","warnHandler","addEventListener","event","reason","setToken","catch","err","i18n","locale","LocalStorage","t","push","h","App","$mount","productionTip","toTimeFormat","date","format","userTimeFormat","moment","toDateFormat","toDateTimeFormat","obj","toDayMonth","toCalendarWeek","isoWeek","toCalendarWeekFromTo","d","startOf","endOf","toAccountAddress","contact","supData","sd","c","currentCountry","result","locationsOfSale","los","controlNumber","toLosName","idToAccountName","found","counrty","idToLosName","toLocaleNoFallbackIfExists","r","toLocaleNoFallback","toLocaleIfExists","booleanDisplay","Array","isArray","best","getLocaleEntry","toCheck","Common","Languages","getLanguagePriority","val","arr","value","idToLabel","formatHid","hid","substr","parseHid","string","parseInt","join","formatter","Intl","NumberFormat","style","minimumFractionDigits","de_DE","da_DK","en_GB","fr_FR","sv_SE","de_LU","lt_LT","en_IE","en_XI","nl_NL","VueI18n","fallbackTree","List","shift","messages","update","paths","rules","post","_get","run","ruleset","facts","getConfig","payload","get","createJob","searchFilter","runParams","customColumnHeaders","getJob","pollUntilJobComplete","jobId","wait","max","success","waitUntilTrue","status","Error","ms","rej","reject","setTimeout","fn","retry","start","storage","localStorage","getLastImportJob","getItem","DOMAIN","setLastImportId","setItem","saveRequestFormDraft","processId","dataKey","expiresKey","removeItem","getRequestFormDraft","str","warn","cleanRequestFormDrafts","checkKey","startsWith","expires","split","setLastUsedAccountId","getLastUsedAccountId","getEmailVerificationStatus","email","requestVerification","completeVerification","ssoVerification","templateList","templateSet","template","cache","LRU","maxAge","cachedSearch","ec","has","search","limit","set","runAggregateQuery","aggregate","entityClass","attributeFilter","asCache","Map","ecListPromise","getEntityclassList","getEntityclassByExternalId","extId","externalId","getAttributesetByExternalId","genericEntityUpdate","oldEntity","newData","changeset","surpressError","patch","createPatch","rev","attributeset","genericEntityCreate","entityclass","pagination","_search","searchWindow","endpoint","temp","searchRequest","countEntries","exists","entitycache","getEntityByIdRev","getEntityByIdDate","getEntityById","getEntitiesById","getDomain","getEntityTimeline","setSettings","getSettings","refreshAso","notifyMissingOffergroup","contactPageRequest","phone","subject","registerAgr","requestInit","requestFill","requestRemove","retractProcess","loadFieldForPackage","pkg","getSteps","step","getFields","index","self","indexOf","f","Request","RequestFormField","fromStorage","setFieldsLoaded","loadPackage","entity","RequestPackage","loadProcess","process","RequestProcess","package","setPackage","updateGeoPosition","setUserAgreement","setRequestStatus","editorName","inProgress","statusLabel","userRoles","Users","Roles","userDateFormat","CmsUsage","actions","mutations","setUiLocale","querySelector","setAttribute","setIsMaintenance","namespaced","createAccount","registrationName","requiresConfirmation","updateAccount","active","maxUsers","unregisterAccount","ssoUser","getToken","createAccountInvite","inviteId","entityclasses","attributesets","settings","listcache","timelineCache","agrControlNumberFreeCache","loadList","loadEntityclass","_","loadEntity","prom","clearCache","reset","loadEntities","throwIfNotAllFound","notCached","cached","slice","baseProm","eProm","saveEntry","as","updated","loadOffergroups","count","loadUsers","persist","getRulesetForKey","rulesets","rs","loadEntityTimeline","checkAgrControlNumberIsFree","$and","field","comparison","setAttributeset","offerEntityclass","offerAttributeset","createAttachment","setAttachment","getAttachment","deleteEntity","offers","errors","offer","offerId","deleteLogo","_searchOffersWithUpload","_removeAttachmentFromOffer","setEntityclass","setOfferEntityclass","setOfferAttributeset","LIMIT","notifications","getNotShown","notification","len","shiftToShow","listAccountsForUser","auth","registerWithDomainByInvite","token","getAccountDetails","loginToDomain","useAccount","keycloak","Keycloak","KeycloakInfo","initPromise","refreshTimer","isInit","main","ssoToken","ssoRefreshToken","ssoParsed","ts","currentToken","hasAccountSelected","getValidTokenForAccount","accountId","hasSsoLogin","exp","ssoProfileLink","createAccountUrl","ssoUserId","sub","initApp","opts","silentCheckSsoFallback","checkLoginIframe","idToken","refreshToken","init","updateToken","setInterval","refreshed","jwt","authenticate","rootState","rootGetters","idpHint","URL","searchParams","ssoIdpHint","redirectUri","createLoginUrl","root","register","createRegisterUrl","switchAccountAndLogin","trigger","existing","login","aud","jwtDecode","expDate","setSsoToken","tokenParsed","createInvite","details","loaded","availableAccounts","isAdmin","offerAutApproval","autApprovalForCountry","roleSupportsProfile","func","roleSupportsProfileSupData","isLoaded","hasRole","baseRole","isActiveSup","isDeactivatedAgr","hasAcceptedTos","isActiveAgr","hasActiveAso","asoData","supHasAllGeoPos","pos","geoPosition","lat","lon","supHasAllMailOrPhone","atLeastOneLos","supIsReadyToSell","supExtra","tosAcceptedOn","activeInsOptions","activeAsoOptions","loadAccountData","loadAvailableAccounts","entities","switchToFirstAvailableAccount","lastAccount","sendEvent","et_UserDefinedEvent","unregisterFromAccount","updateUserData","accountData","updateUserGeoPos","userId","countryId","locationOfSale","TdbRepo","registerWithInvite","setDetails","setAsoData","setAvailableAccounts","modules","user","countrySelection","urlPrefix","findCountryByUrl","host","pathname","domain","countriesForSelection","usesRequestSystem","usesSso","registrationProcedure","countriesForOptions","byId","loadCurrentCountry","$or","loadCountrySelection","loadAll","setCountry","setCountries","setAll","addAll","activtyConfirmedFor","countryFilter","enabledForWebsite","supDataCountries","sup","loadOffers","saveOffer","updateActivity","autApproval","indexData","ageCategory","category1","toJSON","activityConfirmedOn","activityWarningsMailsSent","updateAnimalkindsSold","animalkindsSold","setActivityConfirmedFor","modus","spotMarketSwitch","requestMode","filterExport","offergroupOptions","animalusageOptions","animalusagePool","ageCategoryOptions","category1Options","category2Options","asoOptions","requestOptionsFilter","dynamicFields","defaultLocationGeoRadius","geoRadiusByRegion","animalusage","locationGeoRadius","offergroup","offerspec","gender","amount","amountComparison","aso","statusWeekly","showUnavailable","category2","historyTill","dynamic","filterVisible","filterMandatory","offerListGrouped","offerGroupsOpen","calendarSettings","amountComparisonOptions","labelLong","displayHints","allowTransnationalSearch","offergroupSpecOptions","offerSpecifications","activeInCountries","offerGroupKeys","Set","Object","keys","values","isOfferGroupOpen","groupId","offersFromOpenGroups","entries","flat","usesPoultrySystem","animalkindsUsingPoultrySystem","startOfIsoWeek","dynamicFieldValue","fieldId","isFilterVisible","isFilterMandatory","getCalendarMin","cat2","check","cat1","num","isNaN","getCalendarMax","allMandatoryFiltersSet","geoRadius","region","requestGeoRadius","$not","distance","$nested","match","wk","weeksBefore","getTime","setDate","getDate","weeksAfter","inputType","inputTypeMap","parsed","fieldComparison","element","loadOfferSummary","filterAutApproval","grouped","aggregations","buckets","doc_count","sups","owners","scrollTo","after","setOffergroupOptions","currentFilter","checkOfferSpecifications","getAnimalkindOptions","enabledAnimals","getAnimalmenus","setAnimalusageOptions","o","setAgeCategoryOptions","setCategory2Options","setCategory1Options","setAsoOptions","setDynamicFields","runFilterRules","env","input","requestType","request","selectedType","visible","mandatory","calendar","searchfilter","displayHint","showhistory","switchOfferToHistory","historyDate","historic","currentModus","newModus","setOptions","setState","setFilter","opt","till","resetFilter","findIndex","splice","setLocation","setGroupedResult","addLoadedOffers","setOfferHistoric","setAnimalkind","setDynamicFieldValue","setModus","setSpotMarketSwitch","sw","setRequestModus","m","resetAllFilters","resetMode","setFilterVisible","setFilterMandatory","setCalendarSettings","setDisplayHints","hints","setDefaultLocationGeoRadius","radius","setGeoRadiusByRegion","regions","setRequestOptionsFilter","setFilterExport","ex","setGeneralFilterOptions","transnational","enabled","setOfferGroupOpen","open","idx","resetOfferGroupsOpen","management","idsWanted","idsUnavailable","addRequiredEntity","debouncedLoad","debounce","unavailable","addId","addEntities","clearIds","clearAllIds","clearEntities","addUnavailable","getCityList","countrycode","citycode","cityname","usefuzzy","getLocationCity","code","GeoRepo","pages","ecId","loadPage","loadUsage","addPage","setEcId","forCurrentCountry","forCountry","loadForCurrentCountry","setRegions","byIdRev","latestRevs","getFromStep","fields","addToList","packages","processes","selectedFilters","allAvailableOffers","pkgForClassifications","asoSelected","insSelected","agrSelected","losSelected","noGeoPos","agrData","getPackageForClassification","classificationId","withOffers","canCreateRequest","availableRequestTypes","types","getAsoId","RequestConstants","TYPE_ASO","getInsId","TYPE_INS","TYPE_RESTRICTEDVET","animalkindsUsingLowhatchRequests","eggBreeder","TYPE_LOWHATCH","canRequest","getAgrId","getRegion","showHint","loadPackages","packageEc","loadAgrData","initRequest","pkg2","agr","agrSite","initFollowupRequest","followupRequest","getId","getMembersWithRole","followupFor","agrAddress","siteId","getFollowupProcesses","processEc","loadProcesses","getRev","fillProcessForm","fieldData","attachments","owner","requestProcess","runClassifications","genderMap","userHasActiveAso","userHasActiveIns","animalgender","requestWithOffers","userIns","aut","userAut","userAso","getAutForAgr","allLos","s","setPackages","setSelectedAso","setSelectedIns","setSelectedAgr","setSelectedLos","site","setSelectedType","setNoGeoPos","setRequestPackageForClassifications","setAgrData","setShowHints","viewcache","requestStatusLabels","exportRunning","exportType","availableStatusLabels","g","rg","k","v","text","folders","requestFolders","setViewCache","getViewCache","updateExportType","export","runExport","ExportRepo","alias","jobParams","fallbackLanguage","cols","col","def","job","DlHelper","fileName","exportFileType","saveInProcess","setRunning","running","setExportType","formfield","view","getCachedOptionKey","loadEcForPath","promises","reduce","calculatePathOptions","pathOptionsEc","ecKey","buildKeys","cartesianProduct","elem","nameAfter","variables","filterable","assign","regex","RegExp","json","var","arr1","j","enum","buildEnumKey","buildListKey","numRange","buildRangeKey","en","defineProperty","enumerable","internalName","addToFilter","availableInCountries","defineProperties","minimum","maximum","vals","initialized","currentId","pathOptions","changed","sortRules","attribute","direction","agecategory","cachedDecision","output","filteredPathOptions","ctx","negated","getAll","formfields","rest","setCurrentId","evaluate","inputKey","setRulesets","setRuleset","setRule","ruleIndex","deleteRule","setOpenRuleset","addToResultCache","setSortRules","smaller","bigger","el1","el2","name1","toUpperCase","name2","isSame","isBefore","emailStatusCache","getCachedVerficationStatus","getSsoVerifiedEmail","expired","MailerRepo","accepted","verifyViaSsoEmail","checkForUnverifiedMails","emails","setVerificationStatus","row","hooks","onetime","surpressOnce","knownTriggers","runHook","hook","surpressAccountSwitchHook","setHook","removeHook","removeAllHooks","labelForLang","items","item","hasChanged","oldPkg","languagesLoaded","knownKeys","ee","loadLanguage","loadAllLanguages","save","addData","Vuex","persistence","createPersistedState","ADMIN","plugins","strict","upload","related","mailer","redirect","bbay","base64EncodeFile","file","reader","FileReader","readAsDataURL","onload","encodedFile","mimeType","decoded","dataUrlParts","atob","bits","Uint8Array","charCodeAt","File","dataUriToBlob","dataURI","mime","encoding","ab","ArrayBuffer","ia","Blob","saveAs","trueWords","BaseUrl","LogUrl","VUE_APP_ADMIN_PARTY","IsLive","VUE_APP_COMMIT_SHA","lastIndexOf","bus","offerFieldComponent","multiline","getDynamicFieldOptions","x","ungrouped","usedGroups","grp","groupLabel","backoffTimer","backoffInterval","allowEmptyPayload","hideProgress","retries","headers","Authorization","method","global","fetch","ct","ok","previous","stack","servicestack","reqId","sleep","supe","emptyPayload","webpackContext","req","webpackContextResolve","__webpack_require__","module","exports","__webpack_module_cache__","moduleId","cachedModule","undefined","__webpack_modules__","call","deferred","O","chunkIds","priority","notFulfilled","Infinity","fulfilled","every","n","getter","__esModule","definition","chunkId","u","miniCssF","globalThis","Function","prop","hasOwnProperty","dataWebpackPrefix","l","done","script","needAttach","scripts","getElementsByTagName","getAttribute","createElement","charset","timeout","nc","src","onScriptComplete","prev","clearTimeout","doneFns","parentNode","removeChild","bind","target","head","appendChild","Symbol","toStringTag","nmd","children","createStylesheet","fullhref","oldTag","linkTag","rel","onLinkComplete","errorType","realHref","insertBefore","nextSibling","findStylesheet","existingLinkTags","tag","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","installedChunks","installedChunkData","promise","loadingEnded","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}