{"version":3,"sources":["webpack:///./src/components/facet/SearchBarAutocompleteMobile.vue?c94e","webpack:///./src/components/facet/SearchBarAutocompleteMobile.vue?96f4","webpack:///./node_modules/nanoid/non-secure/index.js","webpack:///./node_modules/@linusborg/vue-simple-portal/dist/index.esm.js","webpack:///src/components/facet/SearchBarAutocompleteMobile.vue","webpack:///./src/components/facet/SearchBarAutocompleteMobile.vue?3281","webpack:///./src/components/facet/SearchBarAutocompleteMobile.vue?3661"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","on","showModal","attrs","model","placeholderText","ref","staticStyle","store","state","tags","length","searchTerms","_e","class","isFocused","close","_v","_s","mobileModalWindowHeading","onFocusChanged","staticRenderFns","urlAlphabet","nanoid","size","id","i","Math","random","_typeof","obj","Symbol","iterator","constructor","prototype","config","selector","concat","setSelector","isBrowser","window","undefined","document","TargetContainer","extend","abstract","name","props","data","vm","updatedNodes","nodes","h","text","tag","destroyed","el","$el","parentNode","removeChild","Portal","disabled","type","Boolean","prepend","String","default","$scopedSlots","created","getTargetEl","insertTargetEl","updated","_this","$nextTick","slotFn","container","beforeDestroy","unmount","watch","immediate","handler","mount","methods","querySelector","parent","child","createElement","substring","appendChild","targetEl","firstChild","insertBefore","propsData","$destroy","install","_Vue","options","arguments","component","defaultSelector","Vue","use","components","IconCross","SearchIcon","SearchBarAutocomplete","Object","required","computed","placeholder","visible","$refs","fakeInput","focus","dispatch","value"],"mappings":"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","file":"js/chunk-6c430126.db0de33d.js","sourcesContent":["import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchBarAutocompleteMobile.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchBarAutocompleteMobile.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex-1\"},[_c('div',{staticClass:\"flex items-center\"},[_c('div',{staticClass:\"flex-grow mr-2\",on:{\"click\":_vm.showModal}},[_c('input',{staticClass:\"text-sm py-1 w-full pl-2 font-light pointer-events-none text-blue-dark text-opacity-50\",attrs:{\"type\":\"text\",\"placeholder\":_vm.model.placeholderText}}),_c('input',{ref:\"fakeInput\",staticStyle:{\"position\":\"absolute\",\"left\":\"0\",\"width\":\"100%\",\"bottom\":\"0\",\"opacity\":\"0\",\"height\":\"0\"},attrs:{\"type\":\"text\"}})]),(!_vm.store.state.tags.length && !_vm.store.state.searchTerms.length)?_c('button',{staticClass:\"inline-flex ml-auto w-8 h-8 items-center justify-center mr-1\",attrs:{\"type\":\"button\"}},[_c('SearchIcon')],1):_vm._e()]),_c('Portal',[(_vm.store.state.isMobileAutocompleteVisible)?_c('div',{staticClass:\"absolute bg-white left-0 top-0 w-full h-full z-50\"},[_c('div',{staticClass:\"facet-search-bar-modal relative w-full h-full flex flex-col flex-shrink-0 oveflow-hidden\",class:{\n 'is-focused': _vm.isFocused\n }},[_c('div',{staticClass:\"bg-blue-dark px-4 py-4 md:py-6\"},[_c('div',{staticClass:\"flex flex-shrink-0 justify-end\"},[_c('span',{attrs:{\"role\":\"button\"},on:{\"click\":_vm.close}},[_c('IconCross',{attrs:{\"width\":\"20px\",\"height\":\"20px\",\"stroke\":\"white\"}})],1)]),_c('h4',{staticClass:\"text-white text-2xl\"},[_vm._v(\" \"+_vm._s(_vm.model.mobileModalWindowHeading)+\" \")])]),_c('div',{staticClass:\"px-4 py-6 flex-1 overflow-hidden\"},[_c('SearchBarAutocomplete',{staticClass:\"flex-shrink-0 relative h-full\",attrs:{\"model\":_vm.model,\"is-mobile\":true,\"focus-on-show-up\":true},on:{\"focus-changed\":_vm.onFocusChanged}})],1)])]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","let urlAlphabet =\n 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict'\nlet customAlphabet = (alphabet, defaultSize = 21) => {\n return (size = defaultSize) => {\n let id = ''\n let i = size\n while (i--) {\n id += alphabet[(Math.random() * alphabet.length) | 0]\n }\n return id\n }\n}\nlet nanoid = (size = 21) => {\n let id = ''\n let i = size\n while (i--) {\n id += urlAlphabet[(Math.random() * 64) | 0]\n }\n return id\n}\nexport { nanoid, customAlphabet }\n","\n/**\n * vue-simple-portal\n * version: 0.1.5,\n * (c) Thorsten Lünborg, 2021 - present\n * LICENCE: Apache-2.0\n * http://github.com/linusborg/vue-simple-portal\n*/\nimport Vue from 'vue';\nimport { nanoid } from 'nanoid/non-secure';\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nvar config = {\n selector: \"vue-portal-target-\".concat(nanoid())\n};\nvar setSelector = function setSelector(selector) {\n return config.selector = selector;\n};\nvar isBrowser = typeof window !== 'undefined' && (typeof document === \"undefined\" ? \"undefined\" : _typeof(document)) !== undefined;\n\nvar TargetContainer = Vue.extend({\n // as an abstract component, it doesn't appear in\n // the $parent chain of components.\n // which means the next parent of any component rendered inside of this oen\n // will be the parent from which is was sent\n // @ts-expect-error\n abstract: true,\n name: 'PortalOutlet',\n props: ['nodes', 'tag'],\n data: function data(vm) {\n return {\n updatedNodes: vm.nodes\n };\n },\n render: function render(h) {\n var nodes = this.updatedNodes && this.updatedNodes();\n if (!nodes) return h();\n return nodes.length === 1 && !nodes[0].text ? nodes : h(this.tag || 'DIV', nodes);\n },\n destroyed: function destroyed() {\n var el = this.$el;\n el && el.parentNode.removeChild(el);\n }\n});\n\nvar Portal = Vue.extend({\n name: 'VueSimplePortal',\n props: {\n disabled: {\n type: Boolean\n },\n prepend: {\n type: Boolean\n },\n selector: {\n type: String,\n default: function _default() {\n return \"#\".concat(config.selector);\n }\n },\n tag: {\n type: String,\n default: 'DIV'\n }\n },\n render: function render(h) {\n if (this.disabled) {\n var nodes = this.$scopedSlots && this.$scopedSlots.default();\n if (!nodes) return h();\n return nodes.length < 2 && !nodes[0].text ? nodes : h(this.tag, nodes);\n }\n\n return h();\n },\n created: function created() {\n if (!this.getTargetEl()) {\n this.insertTargetEl();\n }\n },\n updated: function updated() {\n var _this = this;\n\n // We only update the target container component\n // if the scoped slot function is a fresh one\n // The new slot syntax (since Vue 2.6) can cache unchanged slot functions\n // and we want to respect that here.\n this.$nextTick(function () {\n if (!_this.disabled && _this.slotFn !== _this.$scopedSlots.default) {\n _this.container.updatedNodes = _this.$scopedSlots.default;\n }\n\n _this.slotFn = _this.$scopedSlots.default;\n });\n },\n beforeDestroy: function beforeDestroy() {\n this.unmount();\n },\n watch: {\n disabled: {\n immediate: true,\n handler: function handler(disabled) {\n disabled ? this.unmount() : this.$nextTick(this.mount);\n }\n }\n },\n methods: {\n // This returns the element into which the content should be mounted.\n getTargetEl: function getTargetEl() {\n if (!isBrowser) return;\n return document.querySelector(this.selector);\n },\n insertTargetEl: function insertTargetEl() {\n if (!isBrowser) return;\n var parent = document.querySelector('body');\n var child = document.createElement(this.tag);\n child.id = this.selector.substring(1);\n parent.appendChild(child);\n },\n mount: function mount() {\n if (!isBrowser) return;\n var targetEl = this.getTargetEl();\n var el = document.createElement('DIV');\n\n if (this.prepend && targetEl.firstChild) {\n targetEl.insertBefore(el, targetEl.firstChild);\n } else {\n targetEl.appendChild(el);\n }\n\n this.container = new TargetContainer({\n el: el,\n parent: this,\n propsData: {\n tag: this.tag,\n nodes: this.$scopedSlots.default\n }\n });\n },\n unmount: function unmount() {\n if (this.container) {\n this.container.$destroy();\n delete this.container;\n }\n }\n }\n});\n\nfunction install(_Vue) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _Vue.component(options.name || 'portal', Portal);\n\n if (options.defaultSelector) {\n setSelector(options.defaultSelector);\n }\n}\n\nif (typeof window !== 'undefined' && window.Vue && window.Vue === Vue) {\n // plugin was inlcuded directly in a browser\n Vue.use(install);\n}\n\nexport default install;\nexport { Portal, config, setSelector };\n","\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchBarAutocompleteMobile.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchBarAutocompleteMobile.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SearchBarAutocompleteMobile.vue?vue&type=template&id=8b16762c&\"\nimport script from \"./SearchBarAutocompleteMobile.vue?vue&type=script&lang=js&\"\nexport * from \"./SearchBarAutocompleteMobile.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SearchBarAutocompleteMobile.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/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"],"sourceRoot":""}