{"version":3,"file":"portal/layouts/AV9NY/layout.22eee9dec2676ecfdce8.bundle.js","mappings":"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","sources":["webpack://portal/./implementation/api/announcement-api.js","webpack://portal/./node_modules/vue-youtube-embed/lib/vue-youtube-embed.js","webpack://portal/./implementation/common/js/add-youtube-plugin.js","webpack://portal/./implementation/common/js/plugins/plugins.js","webpack://portal/./implementation/common/js/referer/referer.js","webpack://portal/./implementation/common/js/campaign/campaign.js","webpack://portal/./implementation/common/js/before-directive/before-directive.js","webpack://portal/./implementation/common/js/android-phone-href/android-phone-href.js","webpack://portal/./implementation/common/js/iphone-href/iphone-href.js","webpack://portal/./implementation/common/components/rco-single-package-picker/rco-single-package-picker.js","webpack://portal/./implementation/common/components/rco-single-package-picker/rco-single-package-picker-button/rco-single-package-picker-button.vue","webpack://portal/./implementation/common/components/rco-single-package-picker/rco-single-package-picker-button/rco-single-package-picker-button.vue?1b57","webpack://portal/./implementation/common/components/rco-single-package-picker/rco-single-package-picker-button/rco-single-package-picker-button.vue?f354","webpack://portal/./implementation/api/slayer-api.js","webpack://portal/./implementation/common/components/slayer/composables/layers.js","webpack://portal/./implementation/common/components/slayer/components/technical-error.vue","webpack://portal/./implementation/common/components/slayer/components/technical-error.vue?62c6","webpack://portal/./implementation/common/components/slayer/components/technical-error.vue?b5fc","webpack://portal/./implementation/common/components/slayer/slayer.vue","webpack://portal/./implementation/common/components/slayer/slayer.vue?f042","webpack://portal/./implementation/common/components/slayer/composables/gtm.js","webpack://portal/./implementation/common/components/slayer/slayer.vue?11b6","webpack://portal/./implementation/common/js/common.js","webpack://portal/./implementation/common/js/currency-filter/currency-filter.js","webpack://portal/./implementation/common/js/number-filter/number-filter.js","webpack://portal/./implementation/common/js/date-filter/date-filter.js","webpack://portal/./implementation/common/js/zero-fill-filter/zero-fill-filter.js","webpack://portal/./implementation/common/js/capitalize/capitalize.js","webpack://portal/./implementation/common/js/composables/is-mobile.js","webpack://portal/./implementation/api/personalization-api.js","webpack://portal/./implementation/common/js/composables/personalization.js","webpack://portal/./implementation/common/js/lang/i18n.js","webpack://portal/./implementation/common/js/media-query/media-query.js","webpack://portal/./implementation/common/js/svg-contains-polyfill/svg-contains-polyfill.js","webpack://portal/./implementation/layouts/AV9NY/layout.js","webpack://portal/./implementation/common/js/get-exchange-marzs/get-exchange-marzs.js","webpack://portal/./implementation/common/components/exchange-marzs/exchange-marzs.vue","webpack://portal/./implementation/common/components/exchange-marzs/exchange-marzs.vue?3085","webpack://portal/./implementation/common/components/exchange-marzs/exchange-marzs.vue?1bef","webpack://portal/./implementation/common/components/announcement/announcement-vuex.js","webpack://portal/./implementation/common/components/announcement/announcement.vue","webpack://portal/./implementation/common/components/announcement/announcement.vue?178e","webpack://portal/./implementation/common/components/announcement/announcement.vue?1267","webpack://portal/./implementation/common/components/visibility-container/visibility-container.js","webpack://portal/./implementation/modules/MHER/mher.vue","webpack://portal/./implementation/modules/MHER/mher.vue?d89b","webpack://portal/./implementation/modules/MHER/mher.vue?86d4","webpack://portal/./implementation/layouts/layout-base.js","webpack://portal/./implementation/modules/MACC/macc.js","webpack://portal/./implementation/modules/MSTB/mstb.js","webpack://portal/./implementation/modules/MSUP/msup.js","webpack://portal/./node_modules/@ui-common/vue-accordion/dist/vue-accordion.umd.js","webpack://portal/./node_modules/@ui-common/vue-call-request-modal-glue/dist/vue-call-request-modal-glue.umd.js","webpack://portal/./node_modules/@ui-common/vue-live-announcer/dist/vue-live-announcer.umd.js","webpack://portal/./node_modules/@ui-common/vue-table-of-content/dist/vue-table-of-content.umd.js","webpack://portal/./node_modules/define-data-property/index.js","webpack://portal/./node_modules/es-define-property/index.js","webpack://portal/./node_modules/es-errors/eval.js","webpack://portal/./node_modules/es-errors/index.js","webpack://portal/./node_modules/es-errors/range.js","webpack://portal/./node_modules/es-errors/ref.js","webpack://portal/./node_modules/es-errors/syntax.js","webpack://portal/./node_modules/es-errors/type.js","webpack://portal/./node_modules/es-errors/uri.js","webpack://portal/./node_modules/function-bind/implementation.js","webpack://portal/./node_modules/function-bind/index.js","webpack://portal/./node_modules/get-intrinsic/index.js","webpack://portal/./node_modules/get-query-param/index.js","webpack://portal/./node_modules/gopd/index.js","webpack://portal/./node_modules/hammerjs/hammer.js","webpack://portal/./node_modules/has-property-descriptors/index.js","webpack://portal/./node_modules/has-proto/index.js","webpack://portal/./node_modules/has-symbols/index.js","webpack://portal/./node_modules/has-symbols/shams.js","webpack://portal/./node_modules/hasown/index.js","webpack://portal/./node_modules/is-plain-obj/index.js","webpack://portal/./node_modules/is-url/index.js","webpack://portal/./node_modules/left-pad/index.js","webpack://portal/./node_modules/normalize-url/index.js","webpack://portal/./node_modules/normalize-url/node_modules/query-string/index.js","webpack://portal/./node_modules/outerwidth/index.js","webpack://portal/./node_modules/portal-vue/dist/portal-vue.common.js","webpack://portal/./node_modules/prepend-http/index.js","webpack://portal/./node_modules/set-function-length/index.js","webpack://portal/./node_modules/sort-keys/index.js","webpack://portal/./node_modules/tiny-cookie/tiny-cookie.js","webpack://portal/./node_modules/url/node_modules/call-bind/callBound.js","webpack://portal/./node_modules/url/node_modules/call-bind/index.js","webpack://portal/./node_modules/url/node_modules/object-inspect/index.js","webpack://portal/./node_modules/url/node_modules/qs/lib/formats.js","webpack://portal/./node_modules/url/node_modules/qs/lib/index.js","webpack://portal/./node_modules/url/node_modules/qs/lib/parse.js","webpack://portal/./node_modules/url/node_modules/qs/lib/stringify.js","webpack://portal/./node_modules/url/node_modules/qs/lib/utils.js","webpack://portal/./node_modules/url/node_modules/side-channel/index.js","webpack://portal/./node_modules/url/url.js","webpack://portal/./node_modules/vue-cookie/src/vue-cookie.js","webpack://portal/./node_modules/vue-dom-portal/dist/vue-dom-portal.common.js","webpack://portal/./node_modules/vue-focus/dist/vue-focus.common.js","webpack://portal/./node_modules/vue-gtm/dist/vue-gtm.min.js","webpack://portal/./node_modules/vue-media-queries/dist/vue-media-queries.js","webpack://portal/./node_modules/vue-scrollto/vue-scrollto.js","webpack://portal/./node_modules/vue-touch/dist/vue-touch.js","webpack://portal/./node_modules/wicg-inert/dist/inert.js","webpack://portal/./node_modules/moment/locale/ sync en%7Chu","webpack://portal/./implementation/applications/branch-atm-widget-wrapper/branch-atm-widget-wrapper.vue","webpack://portal/./implementation/applications/branch-atm-widget-wrapper/branch-atm-widget-wrapper.vue?81d8","webpack://portal/./implementation/applications/branch-atm-widget-wrapper/branch-atm-widget-wrapper.vue?c1a8","webpack://portal/./implementation/common/components/accept-pdf-modal/accept-pdf-modal.vue","webpack://portal/./implementation/common/components/accept-pdf-modal/accept-pdf-modal.vue?1044","webpack://portal/./implementation/common/components/accept-pdf-modal/accept-pdf-modal.vue?f51b","webpack://portal/./implementation/common/components/rco-foreign-currency-account-picker-button/rco-foreign-currency-account-picker-button.vue","webpack://portal/./implementation/common/components/rco-foreign-currency-account-picker-button/rco-foreign-currency-account-picker-button.vue?b084","webpack://portal/./implementation/common/components/rco-foreign-currency-account-picker-button/rco-foreign-currency-account-picker-button.vue?8e7a","webpack://portal/./implementation/common/components/tabs/tabs.js","webpack://portal/./implementation/common/components/tabs/tabs.js?0d2c","webpack://portal/./implementation/common/components/tabs/tabs.vue","webpack://portal/./implementation/common/components/video-player/video-player.vue","webpack://portal/./implementation/common/components/video-player/video-player-youtube/video-player-youtube.vue","webpack://portal/./implementation/common/components/video-player/video-player-youtube/video-player-youtube.vue?a657","webpack://portal/./implementation/common/components/video-player/video-player-youtube/video-player-youtube.vue?39cb","webpack://portal/./implementation/common/components/video-player/video-player-playlist/video-player-playlist.vue","webpack://portal/./implementation/common/components/video-player/video-player-playlist/video-player-playlist.vue?60ee","webpack://portal/./implementation/common/components/video-player/video-player-playlist/video-player-playlist.vue?32af","webpack://portal/./implementation/common/components/video-player/video-player-recommended/video-player-recommended.vue","webpack://portal/./implementation/common/components/video-player/video-player-recommended/video-player-recommended.vue?6be3","webpack://portal/./implementation/common/components/video-player/video-player-recommended/video-player-recommended.vue?2c6d","webpack://portal/./implementation/common/components/video-player/video-player-full-text/video-player-full-text.vue?efb6","webpack://portal/./implementation/common/components/video-player/video-player-full-text/video-player-full-text.vue","webpack://portal/./implementation/common/components/video-player/video-player.vue?94b4","webpack://portal/./implementation/common/components/video-player/video-player.vue?316c","webpack://portal/./implementation/common/components/video-preview/video-preview.vue","webpack://portal/./implementation/common/components/video-preview/video-preview.vue?e000","webpack://portal/./implementation/common/components/video-preview/video-preview.vue?55bd","webpack://portal/./implementation/modules/MASD/masd.vue","webpack://portal/./implementation/modules/MASD/masd.vue?315d","webpack://portal/./implementation/modules/MASD/masd.vue?1624","webpack://portal/./implementation/modules/MHAP/mhap.vue","webpack://portal/./implementation/modules/MHAP/mhap.vue?bce5","webpack://portal/./implementation/modules/MHAP/mhap.vue?5b84","webpack://portal/./implementation/modules/MJBL/mjbl.pug","webpack://portal/./implementation/modules/MJBL/mjbl.js","webpack://portal/./implementation/modules/MJBL/mjbl.js?f29b","webpack://portal/./implementation/modules/MJBL/mjbl.vue","webpack://portal/./node_modules/vue-i18n-composable/dist/index.mjs"],"sourcesContent":["import axios from 'axios';\r\nexport default {\r\n\tgetAnnouncements(params) {\r\n\t\treturn axios.post('/announcement/api/query', params);\r\n\t}\r\n};\r\n","/*!\n * Vue YouTube Embed version 2.2.1\n * under MIT License copyright 2018 kaorun343\n */\n// fork from https://github.com/brandly/angular-youtube-embed\n\nif (!String.prototype.includes) {\n String.prototype.includes = function () {\n return String.prototype.indexOf.apply(this, arguments) !== -1\n };\n}\n\nvar youtubeRegexp = /https?:\\/\\/(?:[0-9A-Z-]+\\.)?(?:youtu\\.be\\/|youtube(?:-nocookie)?\\.com\\S*[^\\w\\s-])([\\w-]{11})(?=[^\\w-]|$)(?![?=&+%\\w.-]*(?:['\"][^<>]*>|<\\/a>))[?=&+%\\w.-]*/ig;\nvar timeRegexp = /t=(\\d+)[ms]?(\\d+)?s?/;\n\n/**\n * get id from url\n * @param {string} url url\n * @return {string} id\n */\nfunction getIdFromURL (url) {\n var id = url.replace(youtubeRegexp, '$1');\n\n if (id.includes(';')) {\n var pieces = id.split(';');\n\n if (pieces[1].includes('%')) {\n var uriComponent = decodeURIComponent(pieces[1]);\n id = (\"http://youtube.com\" + uriComponent).replace(youtubeRegexp, '$1');\n } else {\n id = pieces[0];\n }\n } else if (id.includes('#')) {\n id = id.split('#')[0];\n }\n\n return id\n}\n\n/**\n * get time from url\n * @param {string} url url\n * @return {number} time\n */\nfunction getTimeFromURL (url) {\n if ( url === void 0 ) url = '';\n\n var times = url.match(timeRegexp);\n\n if (!times) {\n return 0\n }\n\n var full = times[0];\n var minutes = times[1];\n var seconds = times[2];\n\n if (typeof seconds !== 'undefined') {\n seconds = parseInt(seconds, 10);\n minutes = parseInt(minutes, 10);\n } else if (full.includes('m')) {\n minutes = parseInt(minutes, 10);\n seconds = 0;\n } else {\n seconds = parseInt(minutes, 10);\n minutes = 0;\n }\n\n return seconds + (minutes * 60)\n}\n\nvar container = {\n scripts: [],\n events: {},\n\n run: function run () {\n var this$1 = this;\n\n this.scripts.forEach(function (callback) {\n callback(this$1.YT);\n });\n this.scripts = [];\n },\n\n register: function register (callback) {\n var this$1 = this;\n\n if (this.YT) {\n this.Vue.nextTick(function () {\n callback(this$1.YT);\n });\n } else {\n this.scripts.push(callback);\n }\n }\n};\n\nvar pid = 0;\n\nvar YouTubePlayer = {\n props: {\n playerHeight: {\n type: [String, Number],\n default: '390'\n },\n playerWidth: {\n type: [String, Number],\n default: '640'\n },\n playerVars: {\n type: Object,\n default: function () { return ({ autoplay: 0, time: 0 }); }\n },\n videoId: {\n type: String\n },\n mute: {\n type: Boolean,\n default: false\n }\n },\n render: function render (h) {\n return h('div', [\n h('div', { attrs: { id: this.elementId }})\n ])\n },\n template: '
',\n watch: {\n playerWidth: 'setSize',\n playerHeight: 'setSize',\n videoId: 'update',\n mute: 'setMute'\n },\n data: function data () {\n pid += 1;\n return {\n elementId: (\"youtube-player-\" + pid),\n player: {}\n }\n },\n methods: {\n setSize: function setSize () {\n this.player.setSize(this.playerWidth, this.playerHeight);\n },\n setMute: function setMute (value) {\n if (value) {\n this.player.mute();\n } else {\n this.player.unMute();\n }\n },\n update: function update (videoId) {\n var name = (this.playerVars.autoplay ? 'load' : 'cue') + \"VideoById\";\n if (this.player.hasOwnProperty(name)) {\n this.player[name](videoId);\n } else {\n setTimeout(function () {\n this.update(videoId);\n }.bind(this), 100);\n }\n }\n },\n mounted: function mounted () {\n var this$1 = this;\n\n container.register(function (YouTube) {\n var ref = this$1;\n var playerHeight = ref.playerHeight;\n var playerWidth = ref.playerWidth;\n var playerVars = ref.playerVars;\n var videoId = ref.videoId;\n\n this$1.player = new YouTube.Player(this$1.elementId, {\n height: playerHeight,\n width: playerWidth,\n playerVars: playerVars,\n videoId: videoId,\n events: {\n onReady: function (event) {\n this$1.setMute(this$1.mute);\n this$1.$emit('ready', event);\n },\n onStateChange: function (event) {\n if (event.data !== -1) {\n this$1.$emit(container.events[event.data], event);\n }\n },\n onError: function (event) {\n this$1.$emit('error', event);\n }\n }\n });\n });\n },\n beforeDestroy: function beforeDestroy () {\n if (this.player !== null && this.player.destroy) {\n this.player.destroy();\n }\n delete this.player;\n }\n};\n\nvar index = {\n install: function install (Vue, options) {\n if ( options === void 0 ) options = {};\n\n container.Vue = Vue;\n YouTubePlayer.ready = YouTubePlayer.mounted;\n var global = options.global; if ( global === void 0 ) global = true;\n var componentId = options.componentId; if ( componentId === void 0 ) componentId = 'youtube';\n\n if (global) {\n // if there is a global component with \"youtube\" identifier already taken\n // then we should let user to pass a new identifier.\n Vue.component(componentId, YouTubePlayer);\n }\n Vue.prototype.$youtube = { getIdFromURL: getIdFromURL, getTimeFromURL: getTimeFromURL };\n\n if (typeof window !== 'undefined' && typeof document !== 'undefined') {\n var tag = document.createElement('script');\n tag.src = 'https://www.youtube.com/player_api';\n var firstScriptTag = document.getElementsByTagName('script')[0];\n firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);\n\n window.onYouTubeIframeAPIReady = function () {\n container.YT = YT;\n var PlayerState = YT.PlayerState;\n\n container.events[PlayerState.ENDED] = 'ended';\n container.events[PlayerState.PLAYING] = 'playing';\n container.events[PlayerState.PAUSED] = 'paused';\n container.events[PlayerState.BUFFERING] = 'buffering';\n container.events[PlayerState.CUED] = 'cued';\n\n container.Vue.nextTick(function () {\n container.run();\n });\n };\n }\n }\n};\n\nexport default index;\nexport { YouTubePlayer, getIdFromURL, getTimeFromURL };\n","import Vue from 'vue';\r\nimport VueYouTubeEmbed from 'vue-youtube-embed';\r\nexport const addYoutubePlugin = () => {\r\n\tVue.use(VueYouTubeEmbed);\r\n};\r\n","import Vue from 'vue';\r\n\r\nimport VueScrollTo from 'vue-scrollto';\r\nimport Vuelidate from 'vuelidate';\r\nimport VueGtm from 'vue-gtm';\r\nimport { mediaQueries } from '../media-query/media-query';\r\nimport VueCookie from 'vue-cookie';\r\nimport VueModal from '@ui-common/vue-modal';\r\nimport VueLiveAnnouncerPlugin from '@ui-common/vue-live-announcer';\r\nimport Vuex from 'vuex';\r\nimport DomPortal from 'vue-dom-portal';\r\n\r\nVue.use(VueModal);\r\nVue.use(VueScrollTo);\r\nVue.use(VueGtm, {\r\n\t// debug: true\r\n});\r\nVue.use(Vuelidate);\r\nVue.use(VueCookie);\r\nVue.use(mediaQueries);\r\nVue.use(DomPortal);\r\nVue.use(Vuex);\r\nVue.use(VueLiveAnnouncerPlugin);\r\n","import Vue from 'vue';\r\nimport { COOKIE_GDPR_LEVEL, GDPR_LEVELS } from '../constants/constants';\r\nconst COOKIE_PORTAL_REFERER = 'portal_referer';\r\n\r\nexport const initReferer = () => {\r\n\tlet gdprLevel = Vue.cookie.get(COOKIE_GDPR_LEVEL);\r\n\tif (gdprLevel == GDPR_LEVELS.HIGH) {\r\n\t\tlet refererCookie = Vue.cookie.get(COOKIE_PORTAL_REFERER);\r\n\t\tif (!refererCookie && document.referrer) {\r\n\t\t\tVue.cookie.set(COOKIE_PORTAL_REFERER, document.referrer, { path: '/' });\r\n\t\t}\r\n\t}\r\n};\r\n\r\nexport const deleteReferer = () => {\r\n\tVue.cookie.delete(COOKIE_PORTAL_REFERER);\r\n};\r\n","import queryString from 'query-string';\r\nimport Vue from 'vue';\r\nconst COOKIE_PORTAL_KAMPANY_SOURCE = 'portal_kampany_source';\r\nconst COOKIE_PORTAL_KAMPANY_MEDIUM = 'portal_kampany_medium';\r\nconst COOKIE_PORTAL_KAMPANY_CAMPAIGN = 'portal_kampany_campaign';\r\nconst COOKIE_PORTAL_KAMPANY_TERM = 'portal_kampany_term';\r\nconst COOKIE_PORTAL_KAMPANY_CONTENT = 'portal_kampany_content';\r\nexport const initCampaign = () => {\r\n\tlet isUtm = true;\r\n\tlet parsed = queryString.parse(location.search);\r\n\tlet campaign = parsed.utm_source;\r\n\tif (!campaign) {\r\n\t\tcampaign = parsed.otpkampany_source;\r\n\t\tisUtm = false;\r\n\t}\r\n\tif (campaign) {\r\n\t\tif (isUtm) {\r\n\t\t\tVue.cookie.set(COOKIE_PORTAL_KAMPANY_SOURCE, parsed.utm_source?.substring(0, 255), { path: '/' });\r\n\t\t\tVue.cookie.set(COOKIE_PORTAL_KAMPANY_MEDIUM, parsed.utm_medium?.substring(0, 255), { path: '/' });\r\n\t\t\tVue.cookie.set(COOKIE_PORTAL_KAMPANY_CAMPAIGN, parsed.utm_campaign?.substring(0, 255), { path: '/' });\r\n\t\t\tVue.cookie.set(COOKIE_PORTAL_KAMPANY_TERM, parsed.utm_term?.substring(0, 255), { path: '/' });\r\n\t\t\tVue.cookie.set(COOKIE_PORTAL_KAMPANY_CONTENT, parsed.utm_content?.substring(0, 255), { path: '/' });\r\n\t\t} else {\r\n\t\t\tVue.cookie.set(COOKIE_PORTAL_KAMPANY_SOURCE, parsed.otpkampany_source?.substring(0, 255), { path: '/' });\r\n\t\t\tVue.cookie.set(COOKIE_PORTAL_KAMPANY_MEDIUM, parsed.otpkampany_medium?.substring(0, 255), { path: '/' });\r\n\t\t\tVue.cookie.set(COOKIE_PORTAL_KAMPANY_CAMPAIGN, parsed.otpkampany_campaign?.substring(0, 255), { path: '/' });\r\n\t\t}\r\n\t}\r\n};\r\n\r\nexport const deleteCampaign = () => {\r\n\tVue.cookie.delete(COOKIE_PORTAL_KAMPANY_SOURCE);\r\n\tVue.cookie.delete(COOKIE_PORTAL_KAMPANY_MEDIUM);\r\n\tVue.cookie.delete(COOKIE_PORTAL_KAMPANY_CAMPAIGN);\r\n\tVue.cookie.delete(COOKIE_PORTAL_KAMPANY_TERM);\r\n\tVue.cookie.delete(COOKIE_PORTAL_KAMPANY_CONTENT);\r\n};\r\n","export default {\r\n\tbind(el, binding) {\r\n\t\tconst redirect = () => {\r\n\t\t\tlet url = el.getAttribute('href');\r\n\t\t\twindow.location.href = url;\r\n\t\t};\r\n\t\tel.addEventListener('click', (e) => {\r\n\t\t\te.preventDefault();\r\n\t\t\tbinding\r\n\t\t\t\t.value()\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\tredirect();\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\tredirect();\r\n\t\t\t\t});\r\n\t\t});\r\n\t}\r\n};\r\n","import { ANDROID_PHONE_REGEX } from '../constants/constants';\r\n\r\nexport default {\r\n\tbind: function (el, binding) {\r\n\t\tif (ANDROID_PHONE_REGEX.test(navigator.userAgent)) {\r\n\t\t\tel.setAttribute('href', binding.value);\r\n\t\t}\r\n\t}\r\n};\r\n","import { IPHONE_REGEX } from '../constants/constants';\r\n\r\nexport default {\r\n\tbind: function (el, binding) {\r\n\t\tif (IPHONE_REGEX.test(navigator.userAgent)) {\r\n\t\t\tel.setAttribute('href', binding.value);\r\n\t\t}\r\n\t}\r\n};\r\n","import EventBus from '../../../common/js/event-bus/event-bus';\r\nimport rcoApi from '../../../api/rco-api';\r\nexport default {\r\n\tname: 'rcoSingleCardSelector',\r\n\tprops: {\r\n\t\tpackageId: {\r\n\t\t\ttype: String,\r\n\t\t\trequired: true\r\n\t\t}\r\n\t},\r\n\tdata: () => ({\r\n\t\tmodel: {\r\n\t\t\tcardLimit: null,\r\n\t\t\tcardShoppingLimit: null,\r\n\t\t\tcardVirtualShoppingLimit: null,\r\n\t\t\tpackageId: null,\r\n\t\t\twithoutCard: false,\r\n\t\t\tchoosedCardId: null,\r\n\t\t\tfromLanding: true\r\n\t\t}\r\n\t}),\r\n\tcreated() {\r\n\t\tthis.init();\r\n\t\tEventBus.$on('singleCardData', () => {\r\n\t\t\tthis.sendData();\r\n\t\t});\r\n\t},\r\n\tmethods: {\r\n\t\tasync sendData() {\r\n\t\t\ttry {\r\n\t\t\t\tlet packageData = Object.assign({}, this.model);\r\n\t\t\t\tif (this.model.withoutCard) {\r\n\t\t\t\t\tdelete packageData.choosedCardId;\r\n\t\t\t\t}\r\n\t\t\t\tconst response = await rcoApi.sendPackageData(packageData);\r\n\t\t\t\tconst url = response.data.url;\r\n\t\t\t\twindow.location.href = url;\r\n\t\t\t\tconsole.log(url);\r\n\t\t\t} catch (err) {\r\n\t\t\t\tEventBus.$emit('technicalError');\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync init() {\r\n\t\t\tconst chosenCard = window.context.rcoSingleCardPickerData.packages[this.packageId].availableCards[0];\r\n\t\t\tconst cards = window.context.rcoSingleCardPickerData.cards[chosenCard];\r\n\t\t\tthis.model = { ...this.model, ...cards, packageId: this.packageId, choosedCardId: chosenCard };\r\n\t\t\ttry {\r\n\t\t\t\tawait rcoApi.getWebsalesId();\r\n\t\t\t} catch (err) {\r\n\t\t\t\tconsole.log(err);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n};\r\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"rco-single-card-selector-button\"},[_c('vue-button',{attrs:{\"id\":_vm.buttonId,\"aria-labelledby\":_vm.buttonLabelledBy,\"disabled\":_vm.sending},on:{\"click\":_vm.getCookie}},[_vm._t(\"default\")],2),(_vm.technicalError)?_c('vue-error-message',[_vm._v(\"Technikai hiba történt, kérjük próbálja újra később!\")]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/esbuild-loader/dist/index.cjs??clonedRuleSet-4.use[0]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./rco-single-package-picker-button.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/esbuild-loader/dist/index.cjs??clonedRuleSet-4.use[0]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./rco-single-package-picker-button.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./rco-single-package-picker-button.vue?vue&type=template&id=3a9ce934&lang=pug\"\nimport script from \"./rco-single-package-picker-button.vue?vue&type=script&lang=js\"\nexport * from \"./rco-single-package-picker-button.vue?vue&type=script&lang=js\"\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","import axios from 'axios';\r\n\r\nexport default {\r\n\tgetSlayer() {\r\n\t\treturn axios.get('/static/portal/sw/json/sales-layer.json');\r\n\t}\r\n};\r\n","import { computed, ref, readonly } from 'vue';\r\nimport slayerApi from '../../../../api/slayer-api';\r\n\r\nconst STATES = {\r\n\tINIT: Symbol('INIT'),\r\n\tSUCCESS: Symbol('SUCCESS'),\r\n\tERROR: Symbol('ERROR')\r\n};\r\nexport const useLayers = () => {\r\n\tconst state = ref(STATES.INIT);\r\n\tconst layers = ref(null);\r\n\tconst layer = ref(null);\r\n\tconst getLayers = async () => {\r\n\t\ttry {\r\n\t\t\tconst { data } = await slayerApi.getSlayer();\r\n\t\t\tlayers.value = data;\r\n\t\t} catch (err) {\r\n\t\t\tthrow new Error('Could not get layers.json!');\r\n\t\t}\r\n\t};\r\n\tconst getLayer = async (id) => {\r\n\t\ttry {\r\n\t\t\tif (!layers.value) {\r\n\t\t\t\tawait getLayers();\r\n\t\t\t}\r\n\t\t\tstate.value = STATES.SUCCESS;\r\n\t\t\tif (!layers.value[id]) {\r\n\t\t\t\tthrow new Error('Layer not found!');\r\n\t\t\t} else {\r\n\t\t\t\tlayer.value = layers.value[id];\r\n\t\t\t}\r\n\t\t} catch (err) {\r\n\t\t\tstate.value = STATES.ERROR;\r\n\t\t\tthrow err;\r\n\t\t}\r\n\t};\r\n\tconst resetLayer = () => {\r\n\t\tlayer.value = null;\r\n\t};\r\n\tconst technicalError = computed(() => state.value == STATES.ERROR);\r\n\treturn {\r\n\t\tlayer: readonly(layer),\r\n\t\ttechnicalError: readonly(technicalError),\r\n\t\tgetLayer,\r\n\t\tresetLayer\r\n\t};\r\n};\r\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('VueFeedback',{attrs:{\"type\":\"error\"}},[_c('template',{slot:\"feedback-title\"},[_vm._v(\"Hoppá!\")]),_c('template',{slot:\"feedback-content\"},[_c('p',{staticClass:\"sf-text\"},[_vm._v(\"Technikai hiba történt!\")])])],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/esbuild-loader/dist/index.cjs??clonedRuleSet-4.use[0]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./technical-error.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/esbuild-loader/dist/index.cjs??clonedRuleSet-4.use[0]!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./technical-error.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./technical-error.vue?vue&type=template&id=0e1327af&scoped=true&lang=pug\"\nimport script from \"./technical-error.vue?vue&type=script&lang=js\"\nexport * from \"./technical-error.vue?vue&type=script&lang=js\"\nimport style0 from \"./technical-error.vue?vue&type=style&index=0&id=0e1327af&prod&lang=scss&scoped=true\"\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 \"0e1327af\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('vue-modal',{attrs:{\"modal-id\":_vm.MODAL_ID,\"width\":\"narrow\"}},[_c('template',{slot:\"modal-header\"},[_c('div',{staticClass:\"sales-layer__header\"},[(_vm.layer)?_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.layer.header)}}):_vm._e()])]),_c('template',{slot:\"modal-body\"},[(_vm.technicalError)?_c('TechnicalError'):_vm._e(),(_vm.layer)?_c('div',{staticClass:\"sales-layer__body\",domProps:{\"innerHTML\":_vm._s(_vm.layer.body)}}):_vm._e()],1)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/esbuild-loader/dist/index.cjs??clonedRuleSet-4.use[0]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./slayer.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/esbuild-loader/dist/index.cjs??clonedRuleSet-4.use[0]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./slayer.vue?vue&type=script&lang=js\"","import { getCurrentInstance, ref } from 'vue';\r\n\r\nexport const useGtm = () => {\r\n\tconst vm = getCurrentInstance().proxy;\r\n\tconst modalId = ref(null);\r\n\tconst openLayerGtm = (id) => {\r\n\t\tmodalId.value = id;\r\n\t\tvm.$gtm.trackEvent({\r\n\t\t\tevent: 'popupShown',\r\n\t\t\tpopupName: id\r\n\t\t});\r\n\t};\r\n\tconst closeLayerGtm = () => {\r\n\t\tvm.$gtm.trackEvent({\r\n\t\t\tevent: 'popupClosed',\r\n\t\t\tpopupName: modalId.value\r\n\t\t});\r\n\t\tmodalId.value = null;\r\n\t};\r\n\treturn {\r\n\t\topenLayerGtm,\r\n\t\tcloseLayerGtm\r\n\t};\r\n};\r\n","import { render, staticRenderFns } from \"./slayer.vue?vue&type=template&id=b15441c0&lang=pug\"\nimport script from \"./slayer.vue?vue&type=script&lang=js\"\nexport * from \"./slayer.vue?vue&type=script&lang=js\"\nimport style0 from \"./slayer.vue?vue&type=style&index=0&id=b15441c0&prod&lang=scss\"\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","import Vue from 'vue';\r\nimport './plugins/plugins';\r\nimport axios from 'axios';\r\nimport 'moment';\r\nimport 'wicg-inert';\r\nimport currencyFilter from './currency-filter/currency-filter';\r\nimport numberFilter from './number-filter/number-filter';\r\nimport eventBus from './event-bus/event-bus';\r\nimport zeroFillFilter from './zero-fill-filter/zero-fill-filter';\r\nimport dateFilter from './date-filter/date-filter';\r\nimport capitalize from './capitalize/capitalize';\r\nimport { initReferer } from './referer/referer';\r\nimport { initCampaign } from './campaign/campaign';\r\nimport before from './before-directive/before-directive';\r\nimport VueCallRequestModalGlue from '@ui-common/vue-call-request-modal-glue';\r\nimport VueFormInfo from '@ui-common/vue-form-info';\r\nimport VueFormNotification from '@ui-common/vue-form-notification';\r\nimport VueTooltip from '@ui-common/vue-tooltip';\r\nimport VueButton from '@ui-common/vue-button';\r\nimport './svg-contains-polyfill/svg-contains-polyfill';\r\nimport androidPhoneHref from './android-phone-href/android-phone-href';\r\nimport iphoneHref from './iphone-href/iphone-href';\r\nimport rcoSinglePackagePicker from '../../common/components/rco-single-package-picker/rco-single-package-picker';\r\nimport rcoSinglePackagePickerButton from '../../common/components/rco-single-package-picker/rco-single-package-picker-button/rco-single-package-picker-button';\r\nimport rcoForeignCurrencyAccountPickerButton from '../../common/components/rco-foreign-currency-account-picker-button/rco-foreign-currency-account-picker-button';\r\nimport Slayer from '../components/slayer/slayer.vue';\r\n\r\nVue.prototype.env = window.env;\r\nVue.component('Slayer', Slayer);\r\nVue.component('vue-form-info', VueFormInfo);\r\nVue.component('vue-form-notification', VueFormNotification);\r\nVue.component('vue-tooltip', VueTooltip);\r\nVue.component('VueButton', VueButton);\r\nVue.component('rco-single-package-picker', rcoSinglePackagePicker);\r\nVue.component('rco-single-card-selector-button', rcoSinglePackagePickerButton);\r\nVue.component('rco-foreign-currency-account-picker-button', rcoForeignCurrencyAccountPickerButton);\r\n\r\nVue.prototype.openModal = (e, modalId, options) => {\r\n\teventBus.$emit('openModal', e, modalId, options);\r\n};\r\nVue.prototype.closeModal = (modalId, options) => {\r\n\teventBus.$emit('closeModal', modalId, options);\r\n};\r\nVue.prototype.openOrsi = (orsiFeature) => {\r\n\teventBus.$emit('openOrsi', orsiFeature);\r\n};\r\nVue.prototype.sendEvent = (event, options) => {\r\n\teventBus.$emit(event, options);\r\n};\r\naxios.defaults.headers.common['Cache-Control'] = 'no-store';\r\naxios.defaults.headers.common.Pragma = 'no-cache';\r\naxios.defaults.headers.common.Expires = 0;\r\nVue.prototype.$http = axios;\r\nVue.filter('currency', currencyFilter);\r\nVue.filter('number', numberFilter);\r\nVue.filter('date', dateFilter);\r\nVue.filter('zero', zeroFillFilter);\r\nVue.filter('capitalize', capitalize);\r\ninitReferer();\r\ninitCampaign();\r\nVue.component('vue-call-request-modal-glue', VueCallRequestModalGlue);\r\nVue.directive('before', before);\r\nVue.directive('android-phone-href', androidPhoneHref);\r\nVue.directive('iphone-href', iphoneHref);\r\nVue.config.ignoredElements = [\r\n\t'picture',\r\n\t/^call-request-component-/,\r\n\t/^call-request-business/,\r\n\t'app-webrtc-rco',\r\n\t'otp-adatbiztonsagi-kviz',\r\n\t'branch-atm-widget-wc',\r\n\t'branch-atm-locator-wc'\r\n];\r\n","import i18n from '../lang/i18n';\r\nexport default function (value, currency) {\r\n\tlet fixed = currency == 'HUF' ? 0 : 2;\r\n\tvalue = parseFloat(value);\r\n\tif (typeof value != 'undefined' && value != null) {\r\n\t\treturn new Intl.NumberFormat(i18n.locale, { minimumFractionDigits: fixed, maximumFractionDigits: fixed }).format(value);\r\n\t} else {\r\n\t\treturn '';\r\n\t}\r\n}\r\n","import i18n from '../lang/i18n';\r\nexport default function (value, maxDigits = 2, minDigits = 0) {\r\n\tvalue = parseFloat(value);\r\n\tif (typeof value != 'undefined' && value != null) {\r\n\t\treturn new Intl.NumberFormat(i18n.locale, { minimumFractionDigits: minDigits, maximumFractionDigits: maxDigits, useGrouping: false }).format(value);\r\n\t} else {\r\n\t\treturn '';\r\n\t}\r\n}\r\n","import moment from 'moment';\r\nexport default function (value, format) {\r\n\tif (value) {\r\n\t\treturn moment(value).format(format);\r\n\t} else {\r\n\t\treturn '';\r\n\t}\r\n}\r\n","import leftPad from 'left-pad';\r\nexport default function (value, length) {\r\n\tif (value) {\r\n\t\treturn leftPad(value, length, '0');\r\n\t} else {\r\n\t\treturn '';\r\n\t}\r\n}\r\n","export default function (value) {\r\n\tlet capStr = '';\r\n\tif (value) {\r\n\t\tcapStr = value.charAt(0) + value.slice(1).toLowerCase();\r\n\t}\r\n\treturn capStr;\r\n}\r\n","import { ref, computed, onUnmounted } from 'vue';\r\n\r\nconst BREAKPOINTS = {\r\n\tMOBILE: 767,\r\n\tTABLET: 995,\r\n\tDESKTOP: 1135\r\n};\r\nexport const useIsMobile = () => {\r\n\tconst viewportWidth = ref(null);\r\n\r\n\tconst setViewportWidth = () => {\r\n\t\tviewportWidth.value = window.innerWidth;\r\n\t};\r\n\r\n\tconst isMobile = computed(() => viewportWidth.value <= BREAKPOINTS.MOBILE);\r\n\tconst isTablet = computed(() => viewportWidth.value > BREAKPOINTS.MOBILE && viewportWidth.value <= BREAKPOINTS.TABLET);\r\n\tconst isDesktop = computed(() => viewportWidth.value > BREAKPOINTS.TABLET && viewportWidth.value <= BREAKPOINTS.DESKTOP);\r\n\tconst isLargeDesktop = computed(() => viewportWidth.value > BREAKPOINTS.DESKTOP);\r\n\r\n\twindow.addEventListener('resize', setViewportWidth);\r\n\tsetViewportWidth();\r\n\r\n\tonUnmounted(() => {\r\n\t\twindow.removeEventListener('resize', setViewportWidth);\r\n\t});\r\n\r\n\treturn {\r\n\t\tisMobile,\r\n\t\tisTablet,\r\n\t\tisDesktop,\r\n\t\tisLargeDesktop\r\n\t};\r\n};\r\n","import axios from 'axios';\r\n\r\nconst httpClient = axios.create({\r\n\tbaseURL: window.context.recommUrl\r\n});\r\n\r\nexport default {\r\n\tgetRecommendations(portalId) {\r\n\t\treturn httpClient.get('', {\r\n\t\t\theaders: {\r\n\t\t\t\t'X-Request-ID': window.crypto.randomUUID(),\r\n\t\t\t\t'X-Log-Parameters': '{\"channel\": \"PORTAL\"}',\r\n\t\t\t\t...(portalId && { portalId })\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n};\r\n","import Vue, { getCurrentInstance, nextTick, watch } from 'vue';\r\nimport { computed, ref } from 'vue';\r\nimport personalizationApi from '../../../api/personalization-api';\r\nimport { COOKIE_PORTAL_ID_NAME } from '../constants/constants';\r\n\r\nconst PERSONALIZATION_STATE = {\r\n\tINIT: 'INIT',\r\n\tSUCCESS: 'SUCCESS',\r\n\tERROR: 'ERROR'\r\n};\r\n\r\nconst STATUSES = {\r\n\tHIDDEN: 'hidden',\r\n\tERROR: 'error'\r\n};\r\n\r\nconst fragments = { ...window.context.defaultFragments, ...window.context.personalizedFragments };\r\n\r\nconst personalizationState = ref(PERSONALIZATION_STATE.INIT);\r\nconst isSuccess = computed(() => personalizationState.value == PERSONALIZATION_STATE.SUCCESS);\r\nconst isError = computed(() => personalizationState.value == PERSONALIZATION_STATE.ERROR);\r\nconst portalId = Vue.cookie.get(COOKIE_PORTAL_ID_NAME);\r\nconst recommData = ref(null);\r\n\r\nconst getDataAttributes = (moduleId) => {\r\n\tconst attributes = recommData.value[moduleId].map((data, index) => ({\r\n\t\t'data-item_id': data.recommId,\r\n\t\t'data-item_model': data.model,\r\n\t\t'data-item_position': index,\r\n\t\t'data-item_module': moduleId\r\n\t}));\r\n\treturn attributes;\r\n};\r\n\r\nconst initPersonalization = async () => {\r\n\ttry {\r\n\t\tif (window.context.hasPersonalization) {\r\n\t\t\tconst { data } = await personalizationApi.getRecommendations(portalId);\r\n\t\t\trecommData.value = data;\r\n\t\t}\r\n\t\tpersonalizationState.value = PERSONALIZATION_STATE.SUCCESS;\r\n\t} catch {\r\n\t\tpersonalizationState.value = PERSONALIZATION_STATE.ERROR;\r\n\t}\r\n};\r\n\r\nexport const useMherPersonalization = (params) => {\r\n\tconst mherFragment = ref(null);\r\n\tconst needsMherPlaceholder = ref(true);\r\n\tconst dataAttributes = ref(null);\r\n\r\n\tconst setPersonalizedMher = () => {\r\n\t\ttry {\r\n\t\t\tconst mher = recommData.value[params.moduleId][0];\r\n\t\t\tmherFragment.value = fragments[mher.recommId].mher;\r\n\t\t\tdataAttributes.value = getDataAttributes(params.moduleId)[0];\r\n\t\t\tif (!mherFragment.value) {\r\n\t\t\t\tsetDefaultMher();\r\n\t\t\t} else {\r\n\t\t\t\thideMherPlaceholder();\r\n\t\t\t}\r\n\t\t} catch {\r\n\t\t\tsetDefaultMher();\r\n\t\t}\r\n\t};\r\n\r\n\tconst setDefaultMher = () => {\r\n\t\tmherFragment.value = fragments[params.defaultId].mher;\r\n\t\tif (mherFragment.value) {\r\n\t\t\thideMherPlaceholder();\r\n\t\t}\r\n\t};\r\n\r\n\tconst hideMherPlaceholder = () => {\r\n\t\tnextTick(() => {\r\n\t\t\tneedsMherPlaceholder.value = false;\r\n\t\t\tdocument.querySelector('#mher-placeholder').style.display = 'none';\r\n\t\t});\r\n\t};\r\n\r\n\twatch(\r\n\t\tpersonalizationState,\r\n\t\t() => {\r\n\t\t\tif (isSuccess.value && params.personalized) {\r\n\t\t\t\tsetPersonalizedMher();\r\n\t\t\t} else if (isError.value || !params.personalized) {\r\n\t\t\t\tsetDefaultMher();\r\n\t\t\t}\r\n\t\t},\r\n\t\t{ immediate: true }\r\n\t);\r\n\r\n\treturn {\r\n\t\tmherFragment,\r\n\t\tneedsMherPlaceholder,\r\n\t\tdataAttributes\r\n\t};\r\n};\r\n\r\nexport const useMhapPersonalization = (params) => {\r\n\tconst mhapFragments = ref(null);\r\n\tconst needsMhapPlaceholder = ref(true);\r\n\tconst dataAttributes = ref([null, null, null]);\r\n\r\n\tconst mhap = ref([null, null, null]);\r\n\r\n\tconst setPersonalizedMhap = () => {\r\n\t\ttry {\r\n\t\t\tmhap.value = recommData.value[params.moduleId];\r\n\t\t\tmhapFragments.value = mhap.value.map((_fragment, index) => fragments[mhap.value[index].recommId].mhap);\r\n\t\t\tdataAttributes.value = getDataAttributes(params.moduleId);\r\n\t\t\tif (!mhapFragments.value) {\r\n\t\t\t\tsetDefaultMhap();\r\n\t\t\t} else {\r\n\t\t\t\thideMhapPlaceholder();\r\n\t\t\t}\r\n\t\t} catch {\r\n\t\t\tsetDefaultMhap();\r\n\t\t}\r\n\t};\r\n\r\n\tconst setDefaultMhap = () => {\r\n\t\tmhapFragments.value = mhap.value.map((_fragment, index) => fragments[params.defaultIds[index]].mhap);\r\n\t\tif (mhapFragments.value) {\r\n\t\t\thideMhapPlaceholder();\r\n\t\t}\r\n\t};\r\n\r\n\tconst hideMhapPlaceholder = () => {\r\n\t\tnextTick(() => {\r\n\t\t\tneedsMhapPlaceholder.value = false;\r\n\t\t\tdocument.querySelector('#mhap-placeholder').style.display = 'none';\r\n\t\t});\r\n\t};\r\n\r\n\twatch(\r\n\t\tpersonalizationState,\r\n\t\t() => {\r\n\t\t\tif (isSuccess.value && params.personalized) {\r\n\t\t\t\tsetPersonalizedMhap();\r\n\t\t\t} else if (isError.value || !params.personalized) {\r\n\t\t\t\tsetDefaultMhap();\r\n\t\t\t}\r\n\t\t},\r\n\t\t{ immediate: true }\r\n\t);\r\n\r\n\treturn {\r\n\t\tmhapFragments,\r\n\t\tneedsMhapPlaceholder,\r\n\t\tdataAttributes\r\n\t};\r\n};\r\n\r\nexport const useMasdPersonalization = (params) => {\r\n\tconst vm = getCurrentInstance().proxy;\r\n\r\n\tconst masdFragments = ref(null);\r\n\tconst needsMasdPlaceholder = ref(true);\r\n\tconst dataAttributes = ref(null);\r\n\r\n\tconst setPersonalizedMasd = () => {\r\n\t\ttry {\r\n\t\t\tconst masd = recommData.value[params.moduleId];\r\n\t\t\tif (masd?.visibility == STATUSES.HIDDEN) {\r\n\t\t\t\tsendGtm(STATUSES.HIDDEN);\r\n\t\t\t\tneedsMasdPlaceholder.value = false;\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tmasdFragments.value = masd.map((masdIds) => fragments[masdIds.recommId].masd);\r\n\t\t\tdataAttributes.value = getDataAttributes(params.moduleId);\r\n\t\t\tif (!masdFragments.value) {\r\n\t\t\t\tsetDefaultMasd();\r\n\t\t\t} else {\r\n\t\t\t\tneedsMasdPlaceholder.value = false;\r\n\t\t\t}\r\n\t\t} catch {\r\n\t\t\tsendGtm(STATUSES.ERROR);\r\n\t\t\tsetDefaultMasd();\r\n\t\t}\r\n\t};\r\n\r\n\tconst setDefaultMasd = () => {\r\n\t\ttry {\r\n\t\t\tmasdFragments.value = [fragments[params.defaultId].masd];\r\n\t\t} catch {\r\n\t\t\tconsole.warn('defaultId for masd module is not available');\r\n\t\t} finally {\r\n\t\t\tneedsMasdPlaceholder.value = false;\r\n\t\t}\r\n\t};\r\n\r\n\tconst sendGtm = (status) => {\r\n\t\tvm.$gtm.trackEvent({\r\n\t\t\tevent: 'recom_failed',\r\n\t\t\trecom_status: status,\r\n\t\t\tmodul: params.moduleId\r\n\t\t});\r\n\t};\r\n\r\n\twatch(\r\n\t\tpersonalizationState,\r\n\t\t() => {\r\n\t\t\tif (isSuccess.value && params.personalized) {\r\n\t\t\t\tsetPersonalizedMasd();\r\n\t\t\t} else if (isError.value || !params.personalized) {\r\n\t\t\t\tsetDefaultMasd();\r\n\t\t\t}\r\n\t\t},\r\n\t\t{ immediate: true }\r\n\t);\r\n\r\n\treturn {\r\n\t\tmasdFragments,\r\n\t\tneedsMasdPlaceholder,\r\n\t\tdataAttributes\r\n\t};\r\n};\r\n\r\nexport const usePersonalization = () => {\r\n\tinitPersonalization();\r\n};\r\n","import VueI18n from 'vue-i18n';\r\nimport { createI18n } from 'vue-i18n-composable';\r\nimport moment from 'moment';\r\nimport Vue from 'vue';\r\nVue.use(VueI18n);\r\nmoment.locale(document.documentElement.lang);\r\nconst i18n = createI18n({\r\n\tlocale: document.documentElement.lang\r\n});\r\n\r\nexport default i18n;\r\n","import { MediaQueries } from 'vue-media-queries';\r\nexport const mediaQueries = new MediaQueries();\r\n","SVGElement.prototype.contains = function contains(node) {\r\n\tif (!(0 in arguments)) {\r\n\t\tthrow new TypeError('1 argument is required');\r\n\t}\r\n\r\n\tdo {\r\n\t\tif (this === node) {\r\n\t\t\treturn true;\r\n\t\t}\r\n\t} while ((node = node && node.parentNode));\r\n\r\n\treturn false;\r\n};\r\n","import './layout.scss';\r\nimport Vue from 'vue';\r\nimport VueTableOfContent from '@ui-common/vue-table-of-content';\r\nimport macc from '../../modules/MACC/macc';\r\nimport mhap from '../../modules/MHAP/mhap.vue';\r\nimport msup from '../../modules/MSUP/msup';\r\nimport mjbl from '../../modules/MJBL/mjbl.vue';\r\nimport mstb from '../../modules/MSTB/mstb';\r\nimport masd from '../../modules/MASD/masd.vue';\r\nimport BranchAtmWidgetWrapper from '../../applications/branch-atm-widget-wrapper/branch-atm-widget-wrapper.vue';\r\nimport layoutBase from '../layout-base';\r\n\r\nVue.component('macc', macc);\r\nVue.component('mhap', mhap);\r\nVue.component('mjbl', mjbl);\r\nVue.component('mstb', mstb);\r\nVue.component('msup', msup);\r\nVue.component('masd', masd);\r\nVue.component('vue-table-of-content', VueTableOfContent);\r\nVue.component('branch-atm-widget-wrapper', BranchAtmWidgetWrapper);\r\n\r\n/* eslint-disable no-new*/\r\nnew Vue({\r\n\textends: layoutBase,\r\n\tel: '[data-layout-id=AV9NY-app]'\r\n});\r\n/* eslint-enable*/\r\n","import exchangeApi from '../../../api/exchange-api';\r\nlet exchangeMarzs;\r\nlet callDispatched;\r\nconst getExchangeMarzs = async () => {\r\n\ttry {\r\n\t\tif (!callDispatched) {\r\n\t\t\tconst response = await exchangeApi.getEcbDifference();\r\n\t\t\tif (response && response.data && response.data.ecbDifference) {\r\n\t\t\t\texchangeMarzs = response.data.ecbDifference;\r\n\t\t\t}\r\n\t\t}\r\n\t\tcallDispatched = true;\r\n\t\tif (!exchangeMarzs && callDispatched) {\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tgetExchangeMarzs();\r\n\t\t\t}, 500);\r\n\t\t}\r\n\t} catch (error) {\r\n\t\tconsole.error(error);\r\n\t}\r\n\treturn exchangeMarzs;\r\n};\r\n\r\nexport default getExchangeMarzs;\r\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',{staticClass:\"exchange-marzs\"},[_c('strong',[(_vm.ecbDifference)?[_vm._v(_vm._s(_vm._f(\"number\")(_vm.ecbDifference))+\"%\")]:[_vm._v(\"N/A\")]],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/esbuild-loader/dist/index.cjs??clonedRuleSet-4.use[0]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./exchange-marzs.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/esbuild-loader/dist/index.cjs??clonedRuleSet-4.use[0]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./exchange-marzs.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./exchange-marzs.vue?vue&type=template&id=39211324&lang=pug\"\nimport script from \"./exchange-marzs.vue?vue&type=script&lang=js\"\nexport * from \"./exchange-marzs.vue?vue&type=script&lang=js\"\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","import announcementApi from '../../../api/announcement-api';\r\nconst ANNOUNCEMENT_SET_ANNOUNCEMENTS = 'ANNOUNCEMENT_SET_ANNOUNCEMENTS';\r\nconst ANNOUNCEMENT_SET_TECHNICAL_ERROR = 'ANNOUNCEMENT_SET_TECHNICAL_ERROR';\r\n\r\nconst announcementState = {\r\n\ttechnicalError: false,\r\n\tannouncements: []\r\n};\r\n\r\nconst announcementActions = {\r\n\tasync getAnnouncements({ commit }, params) {\r\n\t\ttry {\r\n\t\t\tlet { data } = await announcementApi.getAnnouncements(params);\r\n\t\t\tcommit(ANNOUNCEMENT_SET_ANNOUNCEMENTS, data);\r\n\t\t} catch (err) {\r\n\t\t\tcommit(ANNOUNCEMENT_SET_TECHNICAL_ERROR);\r\n\t\t}\r\n\t}\r\n};\r\n\r\nconst announcementMutations = {\r\n\t[ANNOUNCEMENT_SET_ANNOUNCEMENTS](state, announcements) {\r\n\t\tstate.announcements = announcements;\r\n\t},\r\n\t[ANNOUNCEMENT_SET_TECHNICAL_ERROR](state) {\r\n\t\tstate.technicalError = true;\r\n\t}\r\n};\r\n\r\nexport default {\r\n\tnamespaced: true,\r\n\tstate: announcementState,\r\n\tmutations: announcementMutations,\r\n\tactions: announcementActions\r\n};\r\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"announcement-wrap\",class:{ 'content-placeholder-active': !_vm.loaded }},[_c('div',{staticClass:\"announcement\",class:{ 'announcement--inline': _vm.inline, 'announcement--hide-bullet': _vm.hideBullet, 'announcement--accept-pdf': _vm.acceptanceNeeded }},[(_vm.inline)?[(_vm.loaded)?[_vm._l((_vm.filteredAnnouncements),function(announcement){return [(_vm.acceptanceNeeded)?_c('AcceptPdfModal',{attrs:{\"id\":`${announcement.announcementSelection}-${announcement.documentId}`,\"pdf-url\":announcement.url},model:{value:(_vm.modelValue),callback:function ($$v) {_vm.modelValue=$$v},expression:\"modelValue\"}},[_c('template',{slot:\"title\"},[_vm._v(_vm._s(_vm.text || announcement.selection.longname))])],2):[_c('a',{staticClass:\"announcement__item announcement__item--inline\",attrs:{\"href\":announcement.url,\"aria-label\":announcement.selection.longname + ' hirdetmény',\"target\":_vm.target,\"rel\":\"nofollow\"}},[_vm._v(_vm._s(_vm.text || announcement.selection.longname))]),(announcement.validityStart && !_vm.hideDate)?_c('span',{staticClass:\"item-date\"},[_vm._v(_vm._s(_vm._f(\"date\")(announcement.validityStart,_vm.displayDateFormat))+\". - \"),(announcement.validityEnd)?[_vm._v(_vm._s(_vm._f(\"date\")(announcement.validityEnd,_vm.displayDateFormat))+\".\")]:_vm._e()],2):_vm._e()]]})]:[(_vm.acceptanceNeeded)?_c('div',{staticClass:\"announcement-placeholder content-placeholder-content\"},[_c('div',{staticClass:\"announcement-placeholder-item sf-btn\"},[_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"10\",\"height\":\"18\",\"viewbox\":\"0 0 10 18\",\"fill\":\"none\",\"aria-hidden\":\"true\"}},[_c('path',{attrs:{\"d\":\"M1 1L9 9L0.999997 17\",\"stroke\":\"#ababab\",\"stroke-width\":\"2\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}})]),_c('div',{staticClass:\"announcement-placeholder-text content-placeholder-animated-background content-placeholder-animated-background--gray\"}),_c('div',{staticClass:\"announcement-placeholder-link content-placeholder-animated-background content-placeholder-animated-background--gray\"})])]):_c('span',{staticClass:\"announcement-placeholder content-placeholder-content\"},[_vm._m(0)])]]:[(_vm.loaded)?[_c('p',{staticClass:\"sr-only\"},[_vm._v(\"Hirdetmények listája\")]),_c('ul',{staticClass:\"list list--primary\"},_vm._l((_vm.filteredAnnouncements),function(announcement){return _c('li',{staticClass:\"announcement__item list-item list-item--primary\"},[_c('a',{attrs:{\"href\":announcement.url,\"aria-label\":announcement.selection.longname + ' hirdetmény',\"target\":\"_blank\",\"rel\":\"nofollow\"}},[_vm._v(_vm._s(announcement.selection.longname))]),_c('span',[_vm._v(_vm._s(_vm._f(\"date\")(announcement.validityStart,_vm.displayDateFormat))+\". - \"),(announcement.validityEnd)?[_vm._v(_vm._s(_vm._f(\"date\")(announcement.validityEnd,_vm.displayDateFormat))+\".\")]:_vm._e()],2)])}),0)]:_c('div',{staticClass:\"announcement-placeholder content-placeholder-content\"},_vm._l((3),function(n){return _c('div',{staticClass:\"announcement-placeholder-item\"},[_c('div',{staticClass:\"announcement-placeholder-link content-placeholder-animated-background content-placeholder-animated-background--green\"}),_c('div',{staticClass:\"announcement-placeholder-date content-placeholder-animated-background content-placeholder-animated-background--gray\"})])}),0)]],2)])\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('span',{staticClass:\"announcement-placeholder-item\"},[_c('span',{staticClass:\"announcement-placeholder-link content-placeholder-animated-background content-placeholder-animated-background--green\"}),_c('span',{staticClass:\"announcement-placeholder-date content-placeholder-animated-background content-placeholder-animated-background--gray\"})])\n}]\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/esbuild-loader/dist/index.cjs??clonedRuleSet-4.use[0]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./announcement.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/esbuild-loader/dist/index.cjs??clonedRuleSet-4.use[0]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./announcement.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./announcement.vue?vue&type=template&id=504c9af9&scoped=true&lang=pug\"\nimport script from \"./announcement.vue?vue&type=script&lang=js\"\nexport * from \"./announcement.vue?vue&type=script&lang=js\"\nimport style0 from \"./announcement.vue?vue&type=style&index=0&id=504c9af9&prod&lang=scss&scoped=true\"\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 \"504c9af9\",\n null\n \n)\n\nexport default component.exports","export default {\r\n\tdata: () => ({\r\n\t\tisVisible: true\r\n\t}),\r\n\tcomputed: {\r\n\t\tisMobile() {\r\n\t\t\treturn this.$resize && this.$mq.below(767);\r\n\t\t},\r\n\t\tisTablet() {\r\n\t\t\treturn this.$resize && this.$mq.above(768);\r\n\t\t}\r\n\t},\r\n\trender() {\r\n\t\treturn this.$scopedSlots.default({\r\n\t\t\tisMobile: this.isMobile,\r\n\t\t\tisTablet: this.isTablet\r\n\t\t});\r\n\t}\r\n};\r\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (!_setup.needsMherPlaceholder)?_c('div',{staticClass:\"mher-container\"},[_c('div',_vm._b({staticClass:\"mher-wrapper\",domProps:{\"innerHTML\":_vm._s(_setup.mherFragment)}},'div',_setup.dataAttributes,false))]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/esbuild-loader/dist/index.cjs??clonedRuleSet-4.use[0]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./mher.vue?vue&type=script&setup=true&lang=js\"; export default mod; export * from \"-!../../../node_modules/esbuild-loader/dist/index.cjs??clonedRuleSet-4.use[0]!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./mher.vue?vue&type=script&setup=true&lang=js\"","import { render, staticRenderFns } from \"./mher.vue?vue&type=template&id=23ffe7f5&lang=pug\"\nimport script from \"./mher.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./mher.vue?vue&type=script&setup=true&lang=js\"\nimport style0 from \"./mher.vue?vue&type=style&index=0&id=23ffe7f5&prod&lang=scss\"\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","import '../common/js/common';\r\nimport eventBus from '../common/js/event-bus/event-bus';\r\nimport { mediaQueries } from '../common/js/media-query/media-query';\r\nimport exchangeMarzs from '../common/components/exchange-marzs/exchange-marzs.vue';\r\nimport Vue from 'vue';\r\nimport store from '../common/js/vuex/store';\r\nimport announcementStore from '../common/components/announcement/announcement-vuex';\r\nimport announcement from '../common/components/announcement/announcement.vue';\r\nimport VisibilityContainer from '../common/components/visibility-container/visibility-container';\r\nimport mher from '../modules/MHER/mher.vue';\r\nimport i18n from '../common/js/lang/i18n';\r\nimport { useDirektIbCookieHandler } from '../common/js/composables/direkt-ib-cookie-handler';\r\nimport { usePersonalization } from '../common/js/composables/personalization';\r\nimport PortalVue from 'portal-vue';\r\n\r\nVue.use(PortalVue);\r\nVue.component('exchange-marzs', exchangeMarzs);\r\nVue.component('visibility-container', VisibilityContainer);\r\nVue.component('mher', mher);\r\nif (!store.hasModule(['announcements'])) {\r\n\tstore.registerModule('announcements', announcementStore);\r\n}\r\nif (window.context?.announcements?.length) {\r\n\tstore.dispatch('announcements/getAnnouncements', window.context.announcements);\r\n\tVue.component('announcement', announcement);\r\n}\r\nexport default {\r\n\ti18n,\r\n\tmediaQueries,\r\n\tdata: {\r\n\t\tariaHide: false,\r\n\t\tmodalVisible: null,\r\n\t\tallowAnchor: true,\r\n\t\theroTitle: null\r\n\t},\r\n\tsetup() {\r\n\t\tconst { provideDirektEbValues } = useDirektIbCookieHandler();\r\n\t\tusePersonalization();\r\n\t\tprovideDirektEbValues();\r\n\t},\r\n\tstore,\r\n\tcomputed: {\r\n\t\tisMobile() {\r\n\t\t\treturn this.$resize && this.$mq.below(767);\r\n\t\t}\r\n\t},\r\n\tmethods: {\r\n\t\twaitForFonts() {\r\n\t\t\tif (location.hash) {\r\n\t\t\t\tlet wait = setInterval(() => {\r\n\t\t\t\t\tif (document.documentElement.classList.contains('wf-active')) {\r\n\t\t\t\t\t\tvar elId = location.hash.replace('#', '');\r\n\t\t\t\t\t\tvar scrollToEl = document.getElementById(elId) || document.querySelector(`a[name=\"${elId}]\"`);\r\n\t\t\t\t\t\tif (scrollToEl) {\r\n\t\t\t\t\t\t\tscrollToEl.scrollIntoView(true);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tclearInterval(wait);\r\n\t\t\t\t\t}\r\n\t\t\t\t}, 500);\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tclearInterval(wait);\r\n\t\t\t\t}, 5000);\r\n\t\t\t}\r\n\t\t},\r\n\t\tinitVhk() {\r\n\t\t\t// Inicializalja az osszes VHK webkomponenst\r\n\t\t\tconst event = new CustomEvent('call-request-init');\r\n\t\t\twindow.dispatchEvent(event);\r\n\t\t}\r\n\t},\r\n\tmounted() {\r\n\t\tthis.$nextTick(() => {\r\n\t\t\tthis.allowAnchor && this.waitForFonts();\r\n\t\t});\r\n\t\teventBus.$on('toggleAriaHidden', (hide) => {\r\n\t\t\tthis.ariaHide = hide;\r\n\t\t});\r\n\t\teventBus.$on('openOrsi', (orsiFeature) => {\r\n\t\t\tif (window.ORSI) {\r\n\t\t\t\tswitch (orsiFeature) {\r\n\t\t\t\t\tcase 'chat':\r\n\t\t\t\t\t\twindow.ORSI.chat.openChat();\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'callrequest':\r\n\t\t\t\t\t\twindow.ORSI.callrequest.openCallrequest();\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'writetous':\r\n\t\t\t\t\t\twindow.ORSI.writetous.openWritetous();\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tdefault:\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t\tdocument.addEventListener('tooltip-toggle', this.handleTooltipToggle);\r\n\t\tdocument.addEventListener('select-value-change', this.handleSelectValueChange);\r\n\t\tthis.initVhk();\r\n\t},\r\n\tcreated() {\r\n\t\teventBus.$on('heroTitleChange', (heroTitle) => {\r\n\t\t\tthis.heroTitle = heroTitle;\r\n\t\t});\r\n\t},\r\n\tbeforeDestroy() {\r\n\t\tdocument.removeEventListener('tooltip-toggle', this.handleTooltipToggle);\r\n\t\tdocument.removeEventListener('select-value-change', this.handleSelectValueChange);\r\n\t}\r\n};\r\n","import { VueAccordion, VueAccordionItem } from '@ui-common/vue-accordion';\r\nexport default {\r\n\tdata: () => ({\r\n\t\tisOpen: null\r\n\t}),\r\n\tprops: {\r\n\t\tautoScroll: {\r\n\t\t\tdefault: false\r\n\t\t},\r\n\t\topened: {\r\n\t\t\trequired: false\r\n\t\t},\r\n\t\tinverse: {\r\n\t\t\trequired: false\r\n\t\t}\r\n\t},\r\n\tcomponents: {\r\n\t\tVueAccordion,\r\n\t\tVueAccordionItem\r\n\t},\r\n\tmounted() {\r\n\t\tthis.isOpen = this.opened;\r\n\t\tif (this.autoScroll) {\r\n\t\t\tthis.$scrollTo(this.$el);\r\n\t\t}\r\n\t}\r\n};\r\n","import Vue from 'vue';\r\nimport VueTouch from 'vue-touch';\r\nVue.use(VueTouch);\r\nexport default {\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\tcurrentColumn: 0,\r\n\t\t\tcardWidth: null,\r\n\t\t\tdeviceWidth: null\r\n\t\t};\r\n\t},\r\n\tprops: {\r\n\t\tmodalId: {\r\n\t\t\trequired: false\r\n\t\t},\r\n\t\topenedTab: {\r\n\t\t\trequired: false\r\n\t\t}\r\n\t},\r\n\tcomputed: {\r\n\t\tisMobile() {\r\n\t\t\treturn this.$resize && this.$mq.below(767);\r\n\t\t},\r\n\t\tisTablet() {\r\n\t\t\treturn this.$resize && this.$mq.above(768) && this.$mq.below(959);\r\n\t\t},\r\n\t\tisDesktop() {\r\n\t\t\treturn this.$resize && this.$mq.above(960) && this.$mq.below(1279);\r\n\t\t},\r\n\t\tisLargeDesktop() {\r\n\t\t\treturn this.$resize && this.$mq.above(1280);\r\n\t\t}\r\n\t}\r\n};\r\n","import videoPreview from 'common/components/video-preview/video-preview.vue';\r\n\r\nexport default {\r\n\tcomponents: {\r\n\t\tvideoPreview\r\n\t}\r\n};\r\n","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"vue-accordion\"] = factory();\n\telse\n\t\troot[\"vue-accordion\"] = factory();\n})((typeof self !== 'undefined' ? self : this), () => {\nreturn /******/ (() => { // webpackBootstrap\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ 965:\n/***/ ((__unused_webpack_module, exports, __webpack_require__) => {\n\n\n/**\n * Module dependencies.\n */\n\nvar trim = __webpack_require__(130);\n\n/**\n * Parse the given query `str`.\n *\n * @param {String} str\n * @return {Object}\n * @api public\n */\n\nexports.parse = function(str){\n if ('string' != typeof str) return {};\n\n str = trim(str);\n if ('' == str) return {};\n\n var obj = {};\n var pairs = str.split('&');\n for (var i = 0; i < pairs.length; i++) {\n var parts = pairs[i].split('=');\n obj[parts[0]] = null == parts[1]\n ? ''\n : decodeURIComponent(parts[1]);\n }\n\n return obj;\n};\n\n/**\n * Stringify the given `obj`.\n *\n * @param {Object} obj\n * @return {String}\n * @api public\n */\n\nexports.stringify = function(obj){\n if (!obj) return '';\n var pairs = [];\n for (var key in obj) {\n pairs.push(encodeURIComponent(key) + '=' + encodeURIComponent(obj[key]));\n }\n return pairs.join('&');\n};\n\n\n/***/ }),\n\n/***/ 130:\n/***/ ((module, exports) => {\n\nexports = module.exports = trim;\n\nfunction trim(str){\n if (str.trim) return str.trim();\n return exports.right(exports.left(str));\n}\n\nexports.left = function(str){\n if (str.trimLeft) return str.trimLeft();\n\n return str.replace(/^\\s\\s*/, '');\n};\n\nexports.right = function(str){\n if (str.trimRight) return str.trimRight();\n\n var whitespace_pattern = /\\s/,\n i = str.length;\n while (whitespace_pattern.test(str.charAt(--i)));\n\n return str.slice(0, i + 1);\n};\n\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t(() => {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = (exports, definition) => {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t})();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t(() => {\n/******/ \t\t__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))\n/******/ \t})();\n/******/ \t\n/******/ \t/* webpack/runtime/make namespace object */\n/******/ \t(() => {\n/******/ \t\t// define __esModule on exports\n/******/ \t\t__webpack_require__.r = (exports) => {\n/******/ \t\t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t\t}\n/******/ \t\t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t\t};\n/******/ \t})();\n/******/ \t\n/******/ \t/* webpack/runtime/publicPath */\n/******/ \t(() => {\n/******/ \t\t__webpack_require__.p = \"\";\n/******/ \t})();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be in strict mode.\n(() => {\n\"use strict\";\n// ESM COMPAT FLAG\n__webpack_require__.r(__webpack_exports__);\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n VueAccordion: () => (/* reexport */ VueAccordion),\n VueAccordionItem: () => (/* reexport */ VueAccordionItem)\n});\n\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js\n/* eslint-disable no-var */\n// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n var currentScript = window.document.currentScript\n if (false) { var getCurrentScript; }\n\n var src = currentScript && currentScript.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/)\n if (src) {\n __webpack_require__.p = src[1] // eslint-disable-line\n }\n}\n\n// Indicate to webpack that this file can be concatenated\n/* harmony default export */ const setPublicPath = (null);\n\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[2]!../../node_modules/pug-plain-loader/index.js!../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/VueAccordion.vue?vue&type=template&id=759cd74a&lang=pug&\nvar render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"el-collapse\"},[_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\n\n// EXTERNAL MODULE: ../../node_modules/querystring-component/index.js\nvar querystring_component = __webpack_require__(965);\n;// CONCATENATED MODULE: ../../node_modules/mitt/dist/mitt.mjs\n/* harmony default export */ function mitt(n){return{all:n=n||new Map,on:function(t,e){var i=n.get(t);i?i.push(e):n.set(t,[e])},off:function(t,e){var i=n.get(t);i&&(e?i.splice(i.indexOf(e)>>>0,1):n.set(t,[]))},emit:function(t,e){var i=n.get(t);i&&i.slice().map(function(n){n(e)}),(i=n.get(\"*\"))&&i.slice().map(function(n){n(t,e)})}}}\n//# sourceMappingURL=mitt.mjs.map\n\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/VueAccordion.vue?vue&type=script&lang=js&\n\n\n\n/* harmony default export */ const VueAccordionvue_type_script_lang_js_ = ({\n\tname: 'VueAccordion',\n\tdata() {\n\t\treturn {\n\t\t\tactiveNames: [].concat(this.value),\n\t\t\temitter: null\n\t\t};\n\t},\n\tprops: {\n\t\tariaControls: {\n\t\t\trequired: false\n\t\t},\n\t\tid: {\n\t\t\trequired: false,\n\t\t\ttype: String,\n\t\t\tdefault: 'accordion-module'\n\t\t},\n\t\taccordion: Boolean,\n\t\tvalue: {\n\t\t\ttype: [Array, String, Number],\n\t\t\tdefault() {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t}\n\t},\n\n\tprovide() {\n\t\treturn {\n\t\t\tcollapse: this,\n\t\t\tgetEmitter: () => this.emitter\n\t\t};\n\t},\n\twatch: {\n\t\tvalue(value) {\n\t\t\tthis.activeNames = [].concat(value);\n\t\t}\n\t},\n\n\tmethods: {\n\t\tactiveAccordionItemByUrl() {\n\t\t\tconst params = querystring_component.parse(window.location.search.substring(1));\n\t\t\tconst accordionIndexParam = params[`${this.id}-index`];\n\t\t\tif (typeof accordionIndexParam != 'undefined') {\n\t\t\t\tthis.setActiveNames(accordionIndexParam);\n\t\t\t}\n\t\t},\n\t\tsetActiveNames(activeNames) {\n\t\t\tactiveNames = [].concat(activeNames);\n\t\t\tlet value = this.accordion ? activeNames[0] : activeNames;\n\t\t\tthis.activeNames = activeNames;\n\t\t\tthis.$emit('input', value);\n\t\t\tthis.$emit('change', value);\n\t\t},\n\t\thandleItemClick(item) {\n\t\t\tif (this.accordion) {\n\t\t\t\tthis.setActiveNames((this.activeNames[0] || this.activeNames[0] === 0) && this.activeNames[0] === item.name ? '' : item.name);\n\t\t\t} else {\n\t\t\t\tlet activeNames = this.activeNames.slice(0);\n\t\t\t\tlet index = activeNames.indexOf(item.computedName);\n\n\t\t\t\tif (index > -1) {\n\t\t\t\t\tactiveNames.splice(index, 1);\n\t\t\t\t} else {\n\t\t\t\t\tactiveNames.push(item.computedName);\n\t\t\t\t}\n\t\t\t\tthis.setActiveNames(activeNames);\n\t\t\t}\n\t\t}\n\t},\n\tcreated() {\n\t\tthis.emitter = mitt();\n\t\tthis.emitter.on('item-click', this.handleItemClick);\n\t\tthis.activeAccordionItemByUrl();\n\t}\n});\n\n;// CONCATENATED MODULE: ./src/components/VueAccordion.vue?vue&type=script&lang=js&\n /* harmony default export */ const components_VueAccordionvue_type_script_lang_js_ = (VueAccordionvue_type_script_lang_js_); \n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-59.use[0]!../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-59.use[1]!../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-59.use[2]!../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-59.use[3]!../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/VueAccordion.vue?vue&type=style&index=0&id=759cd74a&prod&lang=scss&\n// extracted by mini-css-extract-plugin\n\n;// CONCATENATED MODULE: ./src/components/VueAccordion.vue?vue&type=style&index=0&id=759cd74a&prod&lang=scss&\n\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\n/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nfunction normalizeComponent(\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */,\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options =\n typeof scriptExports === 'function' ? scriptExports.options : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) {\n // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n\n;// CONCATENATED MODULE: ./src/components/VueAccordion.vue\n\n\n\n;\n\n\n/* normalize component */\n\nvar component = normalizeComponent(\n components_VueAccordionvue_type_script_lang_js_,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* harmony default export */ const VueAccordion = (component.exports);\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[2]!../../node_modules/pug-plain-loader/index.js!../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/VueAccordionItem.vue?vue&type=template&id=b4a14ae2&lang=pug&\nvar VueAccordionItemvue_type_template_id_b4a14ae2_lang_pug_render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:_vm.rootClass,attrs:{\"name\":_vm.ariaControls}},[_c('h' + _vm.headingLevel,{tag:\"component\",staticClass:\"sf-accordion__heading\",on:{\"click\":_vm.handleAccordionHeadingClick}},[_c('button',{staticClass:\"sf-accordion__btn\",attrs:{\"aria-controls\":_vm.ariaControls,\"aria-expanded\":_vm.isActive.toString(),\"id\":_vm.uuid}},[_vm._t(\"img\"),_vm._t(\"title\"),_vm._t(\"subtitle\"),_c('svg',{staticClass:\"sf-accordion__chevron\",attrs:{\"width\":\"24\",\"height\":\"24\",\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"d\":\"M4 9L12 17L20 9\",\"stroke\":\"#52AE30\",\"stroke-width\":\"2\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}})])],2)]),_c('transition',{attrs:{\"name\":\"sf-accordion__animation\"}},[(_vm.isActive)?_c('div',{staticClass:\"sf-accordion__content el-collapse-item-content\",attrs:{\"role\":\"region\",\"aria-hidden\":(!_vm.isActive).toString(),\"id\":_vm.ariaControls,\"aria-labelledby\":_vm.uuid}},[_vm._t(\"default\")],2):_vm._e()])],1)\n}\nvar VueAccordionItemvue_type_template_id_b4a14ae2_lang_pug_staticRenderFns = []\n\n\n;// CONCATENATED MODULE: ../../node_modules/@ui-common/sf-js-utils/dist/sf-js-utils.esm.js\nvar t=Object.freeze({__proto__:null,ADDRESS_CARD:\"^\\\\d{6}[a-zA-Z]{2}$\",ALL_PHONE:[\"^1\\\\s\\\\d{3}\\\\s\\\\d{4}$\",\"^[02-9]\\\\d\\\\s\\\\d{3}\\\\s\\\\d{3,4}$\",\"^(70|20|30|31)\\\\s\\\\d{3}\\\\s\\\\d{4}$\"],BANK_ACCOUNT_SIXTEEN_NUMBERS:\"^\\\\d{8}-\\\\d{8}$\",BANK_ACCOUNT_THIRTEEN_NUMBERS:\"^\\\\d{5}-\\\\d{8}$\",BANK_ACCOUNT_TWENTY_FOUR_NUMBERS:\"^\\\\d{8}-\\\\d{8}-\\\\d{8}$\",DATE_SEPARATORS:/[.,\\/ -]/,DEVIZA_BANK_ACCOUNT_NUMBER_PATTERN:\"^75\\\\d{3}-\\\\d{5}88\\\\d$\",FOREIGN_PHONE_REGEX:/^\\d{1,3}-\\d{1,10}$/,FOREIGN_ZIP_CODE:/^[\\da-zA-Z]{1,10}$/g,FULLNAME:\"^(.+[ ].+)$|^$\",HEX:/#[0-9a-fA-F]{6}/,IDENTITYS:{\"personal-id\":\"^\\\\d{6}[a-zA-Z]{2}$\",\"drivers-license\":\"^[a-zA-Z]{2}\\\\d{6}$\",passport:\"[a-zA-Z]{2}\\\\d{7}$\"},IOS:/ipad|iphone/i,LANDLINE_PHONES:[\"^1\\\\s\\\\d{3}\\\\s\\\\d{4}$\",\"^[02-9]\\\\d\\\\s\\\\d{3}\\\\s\\\\d{3,4}$\"],LAST_FOUR_DIGITS:/^\\d{4}$/,MOBILE_PHONE:\"^(70|20|30|31)\\\\s\\\\d{3}\\\\s\\\\d{4}$\",NAME:\"^[\\\\p{L}\\\\s\\\\.\\\\-\\\\']*$\",PENSIONER_NUMBER:\"^\\\\d{3}-\\\\d{5}-\\\\d{1}$\",TAX_NUMBER:\"^\\\\d{8}-\\\\d{1}-\\\\d{2}$\",YEAR:\"^\\\\d{4}$\",ZIP_CODE:\"^\\\\d{4}$\"});var e=Object.freeze({__proto__:null,HUNGARIAN_PHONE_NUMBER_PREFIX:\"+36\",OTP_BANK_ACCOUNT_NUMBER_PREFIX:\"117\"});var r=Object.freeze({__proto__:null,COOKIE_GDPR_LEVEL:\"gdpr_level\",GDPR_LEVELS:{LOW:1,MEDIUM:2,HIGH:3}});var d=Object.freeze({__proto__:null,BACKEND_DATE:\"YYYY-MM-DD\",DISPLAY_DATE:{hu:\"YYYY.MM.DD.\",en:\"MM/DD/YYYY\"},DISPLAY_TIME:{hu:\"HH:mm\",en:\"hh:mm A\"}});function i(){window.onkeydown=function(t){\"Space\"===t.code&&t.target==document.body&&t.preventDefault()}}function o(t){for(var e=0,r=0;t;){if(\"BODY\"==t.tagName){var d=t.scrollLeft||document.documentElement.scrollLeft,i=t.scrollTop||document.documentElement.scrollTop;e+=t.offsetLeft-d+t.clientLeft,r+=t.offsetTop-i+t.clientTop}else e+=t.offsetLeft-t.scrollLeft+t.clientLeft,r+=t.offsetTop-t.scrollTop+t.clientTop;t=t.offsetParent}return{x:e,y:r}}function s(t){let e=[],r=t.parentNode.firstChild;for(;r;)1===r.nodeType&&r!==t&&e.push(r),r=r.nextSibling;return e}function n(t,e,r){return r=r?parseInt(r,10):0,\"number\"==typeof e?t.slice(r,r+e):t}function p(t){return void 0!==t&&null!=t?Math.floor(t/12)+\" év\":\"\"}const u=767,_=959,h=1279;var a={data:()=>({viewportWidth:null}),methods:{setViewportWidth(){this.viewportWidth=window.innerWidth}},computed:{isMobile(){return this.viewportWidth<=u},isTablet(){return this.viewportWidth>u&&this.viewportWidth<_},isDesktop(){return this.viewportWidth>_&&this.viewportWidthh}},created(){window.addEventListener(\"resize\",this.setViewportWidth),this.setViewportWidth()},mounted(){this.setViewportWidth()},beforeDestroy(){window.removeEventListener(\"resize\",this.setViewportWidth)}},E=(t=8)=>{let e=\"\";const r=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\";for(let d=0;d -1;\n\t\t},\n\t\trootClass() {\n\t\t\tlet rootClass = this.isActive ? 'sf-accordion sf-accordion--active el-collapse-item' : 'sf-accordion el-collapse-item';\n\t\t\trootClass += this.$slots.img ? ' sf-accordion--extended' : '';\n\t\t\trootClass += this.inverse ? ' sf-accordion--inverse' : '';\n\t\t\treturn rootClass;\n\t\t}\n\t},\n\tmethods: {\n\t\taddGtmEvent() {\n\t\t\tif (this.gtmEvent && this.isActive) {\n\t\t\t\tthis.$gtm.trackEvent({\n\t\t\t\t\tevent: this.gtmEvent\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\thandleAccordionHeadingClick(e) {\n\t\t\te.preventDefault();\n\t\t\tthis.handleHeaderClick();\n\t\t\tthis.addGtmEvent();\n\t\t},\n\t\thandleFocus() {\n\t\t\tsetTimeout(() => {\n\t\t\t\tif (!this.isClick) {\n\t\t\t\t\tthis.focusing = true;\n\t\t\t\t} else {\n\t\t\t\t\tthis.isClick = false;\n\t\t\t\t}\n\t\t\t}, 50);\n\t\t},\n\t\thandleHeaderClick() {\n\t\t\tthis.getEmitter().emit('item-click', this);\n\t\t\tthis.focusing = false;\n\t\t\tthis.isClick = true;\n\t\t},\n\t\thandleEnterClick() {\n\t\t\tthis.getEmitter().emit('item-click', this);\n\t\t}\n\t},\n\tcreated() {\n\t\tthis.computedName = this.name || this.uuid;\n\t}\n});\n\n;// CONCATENATED MODULE: ./src/components/VueAccordionItem.vue?vue&type=script&lang=js&\n /* harmony default export */ const components_VueAccordionItemvue_type_script_lang_js_ = (VueAccordionItemvue_type_script_lang_js_); \n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-59.use[0]!../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-59.use[1]!../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-59.use[2]!../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-59.use[3]!../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/VueAccordionItem.vue?vue&type=style&index=0&id=b4a14ae2&prod&lang=scss&\n// extracted by mini-css-extract-plugin\n\n;// CONCATENATED MODULE: ./src/components/VueAccordionItem.vue?vue&type=style&index=0&id=b4a14ae2&prod&lang=scss&\n\n;// CONCATENATED MODULE: ./src/components/VueAccordionItem.vue\n\n\n\n;\n\n\n/* normalize component */\n\nvar VueAccordionItem_component = normalizeComponent(\n components_VueAccordionItemvue_type_script_lang_js_,\n VueAccordionItemvue_type_template_id_b4a14ae2_lang_pug_render,\n VueAccordionItemvue_type_template_id_b4a14ae2_lang_pug_staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\n/* harmony default export */ const VueAccordionItem = (VueAccordionItem_component.exports);\n;// CONCATENATED MODULE: ./src/components-export.js\n\n\n\n\n\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/lib/commands/build/entry-lib-no-default.js\n\n\n\n})();\n\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});\n//# sourceMappingURL=vue-accordion.umd.js.map","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"vue-call-request-modal-glue\"] = factory();\n\telse\n\t\troot[\"vue-call-request-modal-glue\"] = factory();\n})((typeof self !== 'undefined' ? self : this), () => {\nreturn /******/ (() => { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \t// The require scope\n/******/ \tvar __webpack_require__ = {};\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t(() => {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = (exports, definition) => {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t})();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t(() => {\n/******/ \t\t__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))\n/******/ \t})();\n/******/ \t\n/******/ \t/* webpack/runtime/make namespace object */\n/******/ \t(() => {\n/******/ \t\t// define __esModule on exports\n/******/ \t\t__webpack_require__.r = (exports) => {\n/******/ \t\t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t\t}\n/******/ \t\t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t\t};\n/******/ \t})();\n/******/ \t\n/******/ \t/* webpack/runtime/publicPath */\n/******/ \t(() => {\n/******/ \t\t__webpack_require__.p = \"\";\n/******/ \t})();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// ESM COMPAT FLAG\n__webpack_require__.r(__webpack_exports__);\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"default\": () => (/* binding */ entry_lib)\n});\n\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js\n/* eslint-disable no-var */\n// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n var currentScript = window.document.currentScript\n if (false) { var getCurrentScript; }\n\n var src = currentScript && currentScript.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/)\n if (src) {\n __webpack_require__.p = src[1] // eslint-disable-line\n }\n}\n\n// Indicate to webpack that this file can be concatenated\n/* harmony default export */ const setPublicPath = (null);\n\n;// CONCATENATED MODULE: ./src/components/VueCallRequestModalGlue.js\n/* harmony default export */ const VueCallRequestModalGlue = ({\n\tdata: () => ({\n\t\tformState: null\n\t}),\n\tprops: {\n\t\tmodalId: {\n\t\t\trequired: true\n\t\t},\n\t\tcallRequestId: {\n\t\t\trequired: true\n\t\t}\n\t},\n\trender() {\n\t\treturn this.$scopedSlots.default({\n\t\t\tformState: this.formState\n\t\t});\n\t},\n\tcreated() {\n\t\twindow.addEventListener('call-request-state-change', ({ detail: { state, id } }) => {\n\t\t\tif (this.callRequestId == id) {\n\t\t\t\tthis.formState = state;\n\t\t\t}\n\t\t});\n\t\twindow.addEventListener('call-request-close-modal', ({ detail: { id } }) => {\n\t\t\tif (this.callRequestId == id) {\n\t\t\t\tthis.$closeModal(this.modalId);\n\t\t\t}\n\t\t});\n\t\tthis.$modalEventBus.$on('modal-opened', (modalId) => {\n\t\t\tif (modalId == this.modalId) {\n\t\t\t\tconst event = new CustomEvent('call-request-init-form', { detail: { id: this.callRequestId } });\n\t\t\t\twindow.dispatchEvent(event);\n\t\t\t}\n\t\t});\n\t\tthis.$modalEventBus.$on('modal-closed', (modalId) => {\n\t\t\tif (modalId == this.modalId) {\n\t\t\t\tconst event = new CustomEvent('call-request-reset-form', { detail: { id: this.callRequestId } });\n\t\t\t\twindow.dispatchEvent(event);\n\t\t\t}\n\t\t});\n\t}\n});\n\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/lib/commands/build/entry-lib.js\n\n\n/* harmony default export */ const entry_lib = (VueCallRequestModalGlue);\n\n\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});\n//# sourceMappingURL=vue-call-request-modal-glue.umd.js.map","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"vue\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"vue-live-announcer\"] = factory(require(\"vue\"));\n\telse\n\t\troot[\"vue-live-announcer\"] = factory(root[\"Vue\"]);\n})((typeof self !== 'undefined' ? self : this), (__WEBPACK_EXTERNAL_MODULE__203__) => {\nreturn /******/ (() => { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ 203:\n/***/ ((module) => {\n\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__203__;\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t(() => {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = (module) => {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\t() => (module['default']) :\n/******/ \t\t\t\t() => (module);\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t})();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t(() => {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = (exports, definition) => {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t})();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t(() => {\n/******/ \t\t__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))\n/******/ \t})();\n/******/ \t\n/******/ \t/* webpack/runtime/make namespace object */\n/******/ \t(() => {\n/******/ \t\t// define __esModule on exports\n/******/ \t\t__webpack_require__.r = (exports) => {\n/******/ \t\t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t\t}\n/******/ \t\t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t\t};\n/******/ \t})();\n/******/ \t\n/******/ \t/* webpack/runtime/publicPath */\n/******/ \t(() => {\n/******/ \t\t__webpack_require__.p = \"\";\n/******/ \t})();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n(() => {\n// ESM COMPAT FLAG\n__webpack_require__.r(__webpack_exports__);\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"default\": () => (/* binding */ entry_lib)\n});\n\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js\n/* eslint-disable no-var */\n// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n var currentScript = window.document.currentScript\n if (false) { var getCurrentScript; }\n\n var src = currentScript && currentScript.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/)\n if (src) {\n __webpack_require__.p = src[1] // eslint-disable-line\n }\n}\n\n// Indicate to webpack that this file can be concatenated\n/* harmony default export */ const setPublicPath = (null);\n\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[2]!../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/VueLiveAnnouncer.vue?vue&type=template&id=abb58478&scoped=true&\nvar render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:\"root\",staticClass:\"sr-only\"},[_c('div',{attrs:{\"id\":`v-announcer-assertive-${_vm._uid}`,\"aria-live\":\"assertive\",\"aria-atomic\":\"true\"}},[_vm._v(_vm._s(_vm.assertiveContent))]),_c('div',{attrs:{\"id\":`v-announcer-polite-${_vm._uid}`,\"aria-live\":\"polite\",\"aria-atomic\":\"true\"}},[_vm._v(_vm._s(_vm.politeContent))])])\n}\nvar staticRenderFns = []\n\n\n;// CONCATENATED MODULE: ./src/components/VueLiveAnnouncer.constants.js\nconst OPTIONS = {\n\tcomplementRoute: 'has loaded'\n};\nconst POLITENESS_SETTINGS = {\n\tASSERTIVE: 'assertive',\n\tPOLITE: 'polite'\n};\n\nconst EVENTS = {\n\tSET_MESSAGE: 'vue-live-announcer-set-message'\n};\n\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/VueLiveAnnouncer.vue?vue&type=script&lang=js&\n\n\n/* harmony default export */ const VueLiveAnnouncervue_type_script_lang_js_ = ({\n\tname: 'VueLiveAnnouncer',\n\tdata() {\n\t\treturn {\n\t\t\tpoliteContent: '',\n\t\t\tassertiveContent: ''\n\t\t};\n\t},\n\tmethods: {\n\t\tsetAnnouncerMessage(payload) {\n\t\t\tconst { message, options } = payload;\n\t\t\tif (options && options.politeness === POLITENESS_SETTINGS.ASSERTIVE) {\n\t\t\t\tthis.assertiveContent = message;\n\t\t\t} else {\n\t\t\t\tthis.politeContent = message;\n\t\t\t}\n\t\t}\n\t},\n\tmounted() {\n\t\tthis.$VueLiveAnnouncerEventBus.$on(EVENTS.SET_MESSAGE, this.setAnnouncerMessage);\n\t}\n});\n\n;// CONCATENATED MODULE: ./src/components/VueLiveAnnouncer.vue?vue&type=script&lang=js&\n /* harmony default export */ const components_VueLiveAnnouncervue_type_script_lang_js_ = (VueLiveAnnouncervue_type_script_lang_js_); \n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-52.use[0]!../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-52.use[1]!../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-52.use[2]!../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/VueLiveAnnouncer.vue?vue&type=style&index=0&id=abb58478&prod&scoped=true&lang=css&\n// extracted by mini-css-extract-plugin\n\n;// CONCATENATED MODULE: ./src/components/VueLiveAnnouncer.vue?vue&type=style&index=0&id=abb58478&prod&scoped=true&lang=css&\n\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\n/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nfunction normalizeComponent(\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */,\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options =\n typeof scriptExports === 'function' ? scriptExports.options : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) {\n // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n\n;// CONCATENATED MODULE: ./src/components/VueLiveAnnouncer.vue\n\n\n\n;\n\n\n/* normalize component */\n\nvar component = normalizeComponent(\n components_VueLiveAnnouncervue_type_script_lang_js_,\n render,\n staticRenderFns,\n false,\n null,\n \"abb58478\",\n null\n \n)\n\n/* harmony default export */ const VueLiveAnnouncer = (component.exports);\n// EXTERNAL MODULE: external {\"commonjs\":\"vue\",\"commonjs2\":\"vue\",\"root\":\"Vue\"}\nvar external_commonjs_vue_commonjs2_vue_root_Vue_ = __webpack_require__(203);\nvar external_commonjs_vue_commonjs2_vue_root_Vue_default = /*#__PURE__*/__webpack_require__.n(external_commonjs_vue_commonjs2_vue_root_Vue_);\n;// CONCATENATED MODULE: ./src/components/VueLiveAnnouncer.EventBus.js\n\n/* harmony default export */ const VueLiveAnnouncer_EventBus = (new (external_commonjs_vue_commonjs2_vue_root_Vue_default())());\n\n;// CONCATENATED MODULE: ./src/components/VueLiveAnnouncer.plugin.js\n\n\n\n\nfunction install(Vue, options = {}, router = null) {\n\toptions = { ...OPTIONS, ...options };\n\n\tVue.component('VueLiveAnnouncer', VueLiveAnnouncer);\n\tVue.prototype.$VueLiveAnnouncerEventBus = VueLiveAnnouncer_EventBus;\n\tVue.prototype.$VueLiveAnnouncer = {\n\t\tset(message, messageOptions) {\n\t\t\toptions = messageOptions || { politeness: POLITENESS_SETTINGS.POLITE };\n\t\t\tconst politenessValues = Object.values(POLITENESS_SETTINGS);\n\t\t\tif (options && options.politeness && !politenessValues.includes(options.politeness)) {\n\t\t\t\tthrow new Error(`Politeness level must be one of the following: ${politenessValues.join(', ')}`);\n\t\t\t}\n\t\t\tVueLiveAnnouncer_EventBus.$emit(EVENTS.SET_MESSAGE, { message, options });\n\t\t},\n\n\t\tsetComplementRoute(complementRoute) {\n\t\t\tif (typeof complementRoute !== 'string') {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\toptions.COMPLEMENT_ROUTE = complementRoute;\n\t\t}\n\t};\n\n\t// If set the router, will be announced the change of route\n\tif (router) {\n\t\trouter.afterEach((to) => {\n\t\t\tVue.prototype.$VueLiveAnnouncer.set(`${to.meta.announcer || document.title.trim()} ${options.COMPLEMENT_ROUTE}`);\n\t\t});\n\t}\n}\n\n// auto install\nif (typeof window !== 'undefined' && typeof window.Vue !== 'undefined') {\n\twindow.Vue.use(install);\n}\n\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/lib/commands/build/entry-lib.js\n\n\n/* harmony default export */ const entry_lib = (install);\n\n\n})();\n\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});\n//# sourceMappingURL=vue-live-announcer.umd.js.map","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"vue-table-of-content\"] = factory();\n\telse\n\t\troot[\"vue-table-of-content\"] = factory();\n})((typeof self !== 'undefined' ? self : this), () => {\nreturn /******/ (() => { // webpackBootstrap\n/******/ \t\"use strict\";\n/******/ \t// The require scope\n/******/ \tvar __webpack_require__ = {};\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t(() => {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = (exports, definition) => {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t})();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t(() => {\n/******/ \t\t__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))\n/******/ \t})();\n/******/ \t\n/******/ \t/* webpack/runtime/publicPath */\n/******/ \t(() => {\n/******/ \t\t__webpack_require__.p = \"\";\n/******/ \t})();\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"default\": () => (/* binding */ entry_lib)\n});\n\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js\n/* eslint-disable no-var */\n// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n var currentScript = window.document.currentScript\n if (false) { var getCurrentScript; }\n\n var src = currentScript && currentScript.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/)\n if (src) {\n __webpack_require__.p = src[1] // eslint-disable-line\n }\n}\n\n// Indicate to webpack that this file can be concatenated\n/* harmony default export */ const setPublicPath = (null);\n\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[2]!../../node_modules/pug-plain-loader/index.js!../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/VueTableOfContent.vue?vue&type=template&id=8a9ffce4&scoped=true&lang=pug&\nvar render = function render(){var _vm=this,_c=_vm._self._c;return _c('nav',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.visible),expression:\"visible\"}],ref:\"tocNav\",staticClass:\"sf-mobile-toc\",class:{ 'sf-mobile-toc--open': _vm.tocOpened, 'sf-mobile-toc--top': _vm.position === 'top', 'sf-mobile-toc--bottom': _vm.position === 'bottom' },attrs:{\"id\":\"sf-mobile-toc\",\"aria-labelledby\":'toc_button' + _vm.uuid}},[_c('transition',{attrs:{\"name\":\"toc-slide\"}},[_c('ul',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.tocOpened),expression:\"tocOpened\"}],staticClass:\"sf-mobile-toc__list sf-list sf-list--empty\",attrs:{\"id\":'toc_menu' + _vm.uuid,\"role\":\"navigation\",\"aria-labelledby\":'toc_button' + _vm.uuid,\"aria-expanded\":'' + _vm.tocOpened,\"aria-hidden\":'' + !_vm.tocOpened}},_vm._l((_vm.items),function(item){return _c('li',{staticClass:\"sf-mobile-toc__list-item\"},[_c('a',{class:{ 'active' : _vm.activeElement == item.name },attrs:{\"id\":item.name,\"href\":`#${item.name}`},on:{\"click\":function($event){$event.preventDefault();return _vm.scrollToItem(item.name, item.pageIndex)}}},[_vm._v(_vm._s(item.text))])])}),0)]),_c('button',{ref:\"tocButton\",staticClass:\"sf-mobile-toc__button\",attrs:{\"id\":'toc_button' + _vm.uuid,\"type\":\"button\",\"aria-controls\":\"toc_menu\",\"aria-haspopup\":\"true\",\"aria-expanded\":'' + _vm.tocOpened},on:{\"click\":function($event){_vm.tocOpened = !_vm.tocOpened}}},[_c('span',{staticClass:\"sr-only\"},[_vm._v(_vm._s(_vm.$t('choosenBookmark')))]),_c('svg',{attrs:{\"width\":\"14\",\"height\":\"8\",\"viewBox\":\"0 0 14 8\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"d\":\"M0.999999 7L7 0.999999L13 7\",\"stroke\":\"#52AE30\",\"stroke-width\":\"2\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}})])])],1)\n}\nvar staticRenderFns = []\n\n\n;// CONCATENATED MODULE: ../../node_modules/@ui-common/sf-js-utils/dist/sf-js-utils.esm.js\nvar t=Object.freeze({__proto__:null,ADDRESS_CARD:\"^\\\\d{6}[a-zA-Z]{2}$\",ALL_PHONE:[\"^1\\\\s\\\\d{3}\\\\s\\\\d{4}$\",\"^[02-9]\\\\d\\\\s\\\\d{3}\\\\s\\\\d{3,4}$\",\"^(70|20|30|31)\\\\s\\\\d{3}\\\\s\\\\d{4}$\"],BANK_ACCOUNT_SIXTEEN_NUMBERS:\"^\\\\d{8}-\\\\d{8}$\",BANK_ACCOUNT_THIRTEEN_NUMBERS:\"^\\\\d{5}-\\\\d{8}$\",BANK_ACCOUNT_TWENTY_FOUR_NUMBERS:\"^\\\\d{8}-\\\\d{8}-\\\\d{8}$\",DATE_SEPARATORS:/[.,\\/ -]/,DEVIZA_BANK_ACCOUNT_NUMBER_PATTERN:\"^75\\\\d{3}-\\\\d{5}88\\\\d$\",FOREIGN_PHONE_REGEX:/^\\d{1,3}-\\d{1,10}$/,FOREIGN_ZIP_CODE:/^[\\da-zA-Z]{1,10}$/g,FULLNAME:\"^(.+[ ].+)$|^$\",HEX:/#[0-9a-fA-F]{6}/,IDENTITYS:{\"personal-id\":\"^\\\\d{6}[a-zA-Z]{2}$\",\"drivers-license\":\"^[a-zA-Z]{2}\\\\d{6}$\",passport:\"[a-zA-Z]{2}\\\\d{7}$\"},IOS:/ipad|iphone/i,LANDLINE_PHONES:[\"^1\\\\s\\\\d{3}\\\\s\\\\d{4}$\",\"^[02-9]\\\\d\\\\s\\\\d{3}\\\\s\\\\d{3,4}$\"],LAST_FOUR_DIGITS:/^\\d{4}$/,MOBILE_PHONE:\"^(70|20|30|31)\\\\s\\\\d{3}\\\\s\\\\d{4}$\",NAME:\"^[\\\\p{L}\\\\s\\\\.\\\\-\\\\']*$\",PENSIONER_NUMBER:\"^\\\\d{3}-\\\\d{5}-\\\\d{1}$\",TAX_NUMBER:\"^\\\\d{8}-\\\\d{1}-\\\\d{2}$\",YEAR:\"^\\\\d{4}$\",ZIP_CODE:\"^\\\\d{4}$\"});var e=Object.freeze({__proto__:null,HUNGARIAN_PHONE_NUMBER_PREFIX:\"+36\",OTP_BANK_ACCOUNT_NUMBER_PREFIX:\"117\"});var r=Object.freeze({__proto__:null,COOKIE_GDPR_LEVEL:\"gdpr_level\",GDPR_LEVELS:{LOW:1,MEDIUM:2,HIGH:3}});var d=Object.freeze({__proto__:null,BACKEND_DATE:\"YYYY-MM-DD\",DISPLAY_DATE:{hu:\"YYYY.MM.DD.\",en:\"MM/DD/YYYY\"},DISPLAY_TIME:{hu:\"HH:mm\",en:\"hh:mm A\"}});function i(){window.onkeydown=function(t){\"Space\"===t.code&&t.target==document.body&&t.preventDefault()}}function o(t){for(var e=0,r=0;t;){if(\"BODY\"==t.tagName){var d=t.scrollLeft||document.documentElement.scrollLeft,i=t.scrollTop||document.documentElement.scrollTop;e+=t.offsetLeft-d+t.clientLeft,r+=t.offsetTop-i+t.clientTop}else e+=t.offsetLeft-t.scrollLeft+t.clientLeft,r+=t.offsetTop-t.scrollTop+t.clientTop;t=t.offsetParent}return{x:e,y:r}}function s(t){let e=[],r=t.parentNode.firstChild;for(;r;)1===r.nodeType&&r!==t&&e.push(r),r=r.nextSibling;return e}function n(t,e,r){return r=r?parseInt(r,10):0,\"number\"==typeof e?t.slice(r,r+e):t}function p(t){return void 0!==t&&null!=t?Math.floor(t/12)+\" év\":\"\"}const u=767,_=959,h=1279;var a={data:()=>({viewportWidth:null}),methods:{setViewportWidth(){this.viewportWidth=window.innerWidth}},computed:{isMobile(){return this.viewportWidth<=u},isTablet(){return this.viewportWidth>u&&this.viewportWidth<_},isDesktop(){return this.viewportWidth>_&&this.viewportWidthh}},created(){window.addEventListener(\"resize\",this.setViewportWidth),this.setViewportWidth()},mounted(){this.setViewportWidth()},beforeDestroy(){window.removeEventListener(\"resize\",this.setViewportWidth)}},E=(t=8)=>{let e=\"\";const r=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\";for(let d=0;d {}\n\t\t}\n\t},\n\tmethods: {\n\t\tonScroll() {\n\t\t\tlet bookmarks = [...document.querySelectorAll('.bookmark')].reverse();\n\t\t\tthis.bookmarkHeights = bookmarks.map((bookmark) => {\n\t\t\t\treturn {\n\t\t\t\t\tid: bookmark.getAttribute('id'),\n\t\t\t\t\theight: o(bookmark).y - this.computedOffsetHeight,\n\t\t\t\t\ttext: bookmark.getAttribute('data-text')\n\t\t\t\t};\n\t\t\t});\n\t\t\tlet scrollTop = window.scrollY || document.body.scrollTop;\n\t\t\tthis.visible = scrollTop > 40;\n\t\t\tif (this.bookmarkHeights[this.bookmarkHeights.length - 1].height > 0) {\n\t\t\t\tthis.bookmarkTitle = this.$t('defaultText');\n\t\t\t} else {\n\t\t\t\tlet i = 0;\n\t\t\t\tdo {\n\t\t\t\t\tthis.bookmarkTitle = this.bookmarkHeights[i].text;\n\t\t\t\t\ti++;\n\t\t\t\t} while (i < this.bookmarkHeights.length && this.bookmarkHeights[i - 1].height > 0);\n\t\t\t}\n\t\t\t++this.scroll;\n\t\t\tthis.$nextTick(() => {\n\t\t\t\tthis.setActiveElement();\n\t\t\t});\n\t\t},\n\t\tasync scrollToItem(id, itemPage) {\n\t\t\tawait this.jumpToPage(itemPage);\n\t\t\tthis.tocOpened = false;\n\t\t\tthis.doScroll(id);\n\t\t},\n\t\tdoScroll(id) {\n\t\t\tsetTimeout(() => {\n\t\t\t\tif (this.$refs.tocNav && this.$refs.tocNav.classList.contains('sf-mobile-toc--open')) {\n\t\t\t\t\tthis.doScroll(id);\n\t\t\t\t} else {\n\t\t\t\t\tif (this.$refs.tocButton) {\n\t\t\t\t\t\tthis.offsetHeight = parseInt(getComputedStyle(this.$refs.tocButton).height, 10);\n\t\t\t\t\t\tthis.$scrollTo(document.getElementById(id), {\n\t\t\t\t\t\t\toffset: -this.computedOffsetHeight,\n\t\t\t\t\t\t\tonDone: () => {\n\t\t\t\t\t\t\t\tthis.onScroll();\n\t\t\t\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\t\t\t\tthis.$scrollTo(document.getElementById(id), { offset: -this.computedOffsetHeight });\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},\n\t\tsetActiveElement() {\n\t\t\tconst scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;\n\t\t\tconst scrollDirection = scrollTop > this.prevScrollTop ? 'down' : 'up';\n\t\t\tconst itemArray = scrollDirection == 'down' ? [...this.items].map((obj) => ({ ...obj })) : [...this.items].reverse().map((obj) => ({ ...obj }));\n\t\t\titemArray.forEach((item) => {\n\t\t\t\tconst element = document.getElementById(item.name);\n\t\t\t\tconst rect = element.getBoundingClientRect();\n\t\t\t\tconst offsetHeight = document.getElementById('sf-mobile-toc')?.offsetHeight || 0;\n\t\t\t\tif (\n\t\t\t\t\trect.top >= 0 &&\n\t\t\t\t\trect.left >= 0 &&\n\t\t\t\t\trect.bottom <= (window.innerHeight - offsetHeight || document.documentElement.clientHeight - offsetHeight) &&\n\t\t\t\t\trect.right <= (window.innerWidth || document.documentElement.clientWidth)\n\t\t\t\t) {\n\t\t\t\t\tthis.activeElement = item.name;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t});\n\t\t\tthis.prevScrollTop = scrollTop;\n\t\t},\n\t\tasync jumpToPage(itemPage) {\n\t\t\tif (itemPage === null || this.activePage == -1) return;\n\t\t\tif (itemPage != this.activePage) {\n\t\t\t\tthis.jumpToPageFn(itemPage);\n\t\t\t\tawait this.$nextTick();\n\t\t\t}\n\t\t}\n\t},\n\tcomputed: {\n\t\tcomputedOffsetHeight() {\n\t\t\treturn this.scroll && this.$refs.tocButton ? parseInt(getComputedStyle(this.$refs.tocButton).height, 10) : 0;\n\t\t}\n\t},\n\twatch: {\n\t\ttocOpened(value) {\n\t\t\tif (value === false) {\n\t\t\t\tthis.offsetHeight = this.$refs.tocButton ? parseInt(getComputedStyle(this.$refs.tocButton).height, 10) : 0;\n\t\t\t}\n\t\t}\n\t},\n\tmounted() {\n\t\tthis.bookmarkTitle = this.$t('defaultText');\n\t\tthis.prevScrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;\n\t\tthis.setActiveElement();\n\t\twindow.addEventListener('scroll', this.onScroll);\n\t}\n});\n\n;// CONCATENATED MODULE: ./src/components/VueTableOfContent.vue?vue&type=script&lang=js&\n /* harmony default export */ const components_VueTableOfContentvue_type_script_lang_js_ = (VueTableOfContentvue_type_script_lang_js_); \n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-61.use[0]!../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-61.use[1]!../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-61.use[2]!../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-61.use[3]!../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/VueTableOfContent.vue?vue&type=style&index=0&id=8a9ffce4&prod&lang=scss&scoped=true&\n// extracted by mini-css-extract-plugin\n\n;// CONCATENATED MODULE: ./src/components/VueTableOfContent.vue?vue&type=style&index=0&id=8a9ffce4&prod&lang=scss&scoped=true&\n\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\n/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nfunction normalizeComponent(\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */,\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options =\n typeof scriptExports === 'function' ? scriptExports.options : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) {\n // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n\n;// CONCATENATED MODULE: ./src/components/VueTableOfContent.vue\n\n\n\n;\n\n\n/* normalize component */\n\nvar component = normalizeComponent(\n components_VueTableOfContentvue_type_script_lang_js_,\n render,\n staticRenderFns,\n false,\n null,\n \"8a9ffce4\",\n null\n \n)\n\n/* harmony default export */ const VueTableOfContent = (component.exports);\n;// CONCATENATED MODULE: ../../node_modules/@vue/cli-service/lib/commands/build/entry-lib.js\n\n\n/* harmony default export */ const entry_lib = (VueTableOfContent);\n\n\n__webpack_exports__ = __webpack_exports__[\"default\"];\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});\n//# sourceMappingURL=vue-table-of-content.umd.js.map","'use strict';\n\nvar $defineProperty = require('es-define-property');\n\nvar $SyntaxError = require('es-errors/syntax');\nvar $TypeError = require('es-errors/type');\n\nvar gopd = require('gopd');\n\n/** @type {import('.')} */\nmodule.exports = function defineDataProperty(\n\tobj,\n\tproperty,\n\tvalue\n) {\n\tif (!obj || (typeof obj !== 'object' && typeof obj !== 'function')) {\n\t\tthrow new $TypeError('`obj` must be an object or a function`');\n\t}\n\tif (typeof property !== 'string' && typeof property !== 'symbol') {\n\t\tthrow new $TypeError('`property` must be a string or a symbol`');\n\t}\n\tif (arguments.length > 3 && typeof arguments[3] !== 'boolean' && arguments[3] !== null) {\n\t\tthrow new $TypeError('`nonEnumerable`, if provided, must be a boolean or null');\n\t}\n\tif (arguments.length > 4 && typeof arguments[4] !== 'boolean' && arguments[4] !== null) {\n\t\tthrow new $TypeError('`nonWritable`, if provided, must be a boolean or null');\n\t}\n\tif (arguments.length > 5 && typeof arguments[5] !== 'boolean' && arguments[5] !== null) {\n\t\tthrow new $TypeError('`nonConfigurable`, if provided, must be a boolean or null');\n\t}\n\tif (arguments.length > 6 && typeof arguments[6] !== 'boolean') {\n\t\tthrow new $TypeError('`loose`, if provided, must be a boolean');\n\t}\n\n\tvar nonEnumerable = arguments.length > 3 ? arguments[3] : null;\n\tvar nonWritable = arguments.length > 4 ? arguments[4] : null;\n\tvar nonConfigurable = arguments.length > 5 ? arguments[5] : null;\n\tvar loose = arguments.length > 6 ? arguments[6] : false;\n\n\t/* @type {false | TypedPropertyDescriptor} */\n\tvar desc = !!gopd && gopd(obj, property);\n\n\tif ($defineProperty) {\n\t\t$defineProperty(obj, property, {\n\t\t\tconfigurable: nonConfigurable === null && desc ? desc.configurable : !nonConfigurable,\n\t\t\tenumerable: nonEnumerable === null && desc ? desc.enumerable : !nonEnumerable,\n\t\t\tvalue: value,\n\t\t\twritable: nonWritable === null && desc ? desc.writable : !nonWritable\n\t\t});\n\t} else if (loose || (!nonEnumerable && !nonWritable && !nonConfigurable)) {\n\t\t// must fall back to [[Set]], and was not explicitly asked to make non-enumerable, non-writable, or non-configurable\n\t\tobj[property] = value; // eslint-disable-line no-param-reassign\n\t} else {\n\t\tthrow new $SyntaxError('This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.');\n\t}\n};\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\n/** @type {import('.')} */\nvar $defineProperty = GetIntrinsic('%Object.defineProperty%', true) || false;\nif ($defineProperty) {\n\ttry {\n\t\t$defineProperty({}, 'a', { value: 1 });\n\t} catch (e) {\n\t\t// IE 8 has a broken defineProperty\n\t\t$defineProperty = false;\n\t}\n}\n\nmodule.exports = $defineProperty;\n","'use strict';\n\n/** @type {import('./eval')} */\nmodule.exports = EvalError;\n","'use strict';\n\n/** @type {import('.')} */\nmodule.exports = Error;\n","'use strict';\n\n/** @type {import('./range')} */\nmodule.exports = RangeError;\n","'use strict';\n\n/** @type {import('./ref')} */\nmodule.exports = ReferenceError;\n","'use strict';\n\n/** @type {import('./syntax')} */\nmodule.exports = SyntaxError;\n","'use strict';\n\n/** @type {import('./type')} */\nmodule.exports = TypeError;\n","'use strict';\n\n/** @type {import('./uri')} */\nmodule.exports = URIError;\n","'use strict';\n\n/* eslint no-invalid-this: 1 */\n\nvar ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';\nvar toStr = Object.prototype.toString;\nvar max = Math.max;\nvar funcType = '[object Function]';\n\nvar concatty = function concatty(a, b) {\n var arr = [];\n\n for (var i = 0; i < a.length; i += 1) {\n arr[i] = a[i];\n }\n for (var j = 0; j < b.length; j += 1) {\n arr[j + a.length] = b[j];\n }\n\n return arr;\n};\n\nvar slicy = function slicy(arrLike, offset) {\n var arr = [];\n for (var i = offset || 0, j = 0; i < arrLike.length; i += 1, j += 1) {\n arr[j] = arrLike[i];\n }\n return arr;\n};\n\nvar joiny = function (arr, joiner) {\n var str = '';\n for (var i = 0; i < arr.length; i += 1) {\n str += arr[i];\n if (i + 1 < arr.length) {\n str += joiner;\n }\n }\n return str;\n};\n\nmodule.exports = function bind(that) {\n var target = this;\n if (typeof target !== 'function' || toStr.apply(target) !== funcType) {\n throw new TypeError(ERROR_MESSAGE + target);\n }\n var args = slicy(arguments, 1);\n\n var bound;\n var binder = function () {\n if (this instanceof bound) {\n var result = target.apply(\n this,\n concatty(args, arguments)\n );\n if (Object(result) === result) {\n return result;\n }\n return this;\n }\n return target.apply(\n that,\n concatty(args, arguments)\n );\n\n };\n\n var boundLength = max(0, target.length - args.length);\n var boundArgs = [];\n for (var i = 0; i < boundLength; i++) {\n boundArgs[i] = '$' + i;\n }\n\n bound = Function('binder', 'return function (' + joiny(boundArgs, ',') + '){ return binder.apply(this,arguments); }')(binder);\n\n if (target.prototype) {\n var Empty = function Empty() {};\n Empty.prototype = target.prototype;\n bound.prototype = new Empty();\n Empty.prototype = null;\n }\n\n return bound;\n};\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = Function.prototype.bind || implementation;\n","'use strict';\n\nvar undefined;\n\nvar $Error = require('es-errors');\nvar $EvalError = require('es-errors/eval');\nvar $RangeError = require('es-errors/range');\nvar $ReferenceError = require('es-errors/ref');\nvar $SyntaxError = require('es-errors/syntax');\nvar $TypeError = require('es-errors/type');\nvar $URIError = require('es-errors/uri');\n\nvar $Function = Function;\n\n// eslint-disable-next-line consistent-return\nvar getEvalledConstructor = function (expressionSyntax) {\n\ttry {\n\t\treturn $Function('\"use strict\"; return (' + expressionSyntax + ').constructor;')();\n\t} catch (e) {}\n};\n\nvar $gOPD = Object.getOwnPropertyDescriptor;\nif ($gOPD) {\n\ttry {\n\t\t$gOPD({}, '');\n\t} catch (e) {\n\t\t$gOPD = null; // this is IE 8, which has a broken gOPD\n\t}\n}\n\nvar throwTypeError = function () {\n\tthrow new $TypeError();\n};\nvar ThrowTypeError = $gOPD\n\t? (function () {\n\t\ttry {\n\t\t\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\n\t\t\targuments.callee; // IE 8 does not throw here\n\t\t\treturn throwTypeError;\n\t\t} catch (calleeThrows) {\n\t\t\ttry {\n\t\t\t\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\n\t\t\t\treturn $gOPD(arguments, 'callee').get;\n\t\t\t} catch (gOPDthrows) {\n\t\t\t\treturn throwTypeError;\n\t\t\t}\n\t\t}\n\t}())\n\t: throwTypeError;\n\nvar hasSymbols = require('has-symbols')();\nvar hasProto = require('has-proto')();\n\nvar getProto = Object.getPrototypeOf || (\n\thasProto\n\t\t? function (x) { return x.__proto__; } // eslint-disable-line no-proto\n\t\t: null\n);\n\nvar needsEval = {};\n\nvar TypedArray = typeof Uint8Array === 'undefined' || !getProto ? undefined : getProto(Uint8Array);\n\nvar INTRINSICS = {\n\t__proto__: null,\n\t'%AggregateError%': typeof AggregateError === 'undefined' ? undefined : AggregateError,\n\t'%Array%': Array,\n\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,\n\t'%ArrayIteratorPrototype%': hasSymbols && getProto ? getProto([][Symbol.iterator]()) : undefined,\n\t'%AsyncFromSyncIteratorPrototype%': undefined,\n\t'%AsyncFunction%': needsEval,\n\t'%AsyncGenerator%': needsEval,\n\t'%AsyncGeneratorFunction%': needsEval,\n\t'%AsyncIteratorPrototype%': needsEval,\n\t'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,\n\t'%BigInt%': typeof BigInt === 'undefined' ? undefined : BigInt,\n\t'%BigInt64Array%': typeof BigInt64Array === 'undefined' ? undefined : BigInt64Array,\n\t'%BigUint64Array%': typeof BigUint64Array === 'undefined' ? undefined : BigUint64Array,\n\t'%Boolean%': Boolean,\n\t'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,\n\t'%Date%': Date,\n\t'%decodeURI%': decodeURI,\n\t'%decodeURIComponent%': decodeURIComponent,\n\t'%encodeURI%': encodeURI,\n\t'%encodeURIComponent%': encodeURIComponent,\n\t'%Error%': $Error,\n\t'%eval%': eval, // eslint-disable-line no-eval\n\t'%EvalError%': $EvalError,\n\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,\n\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,\n\t'%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined : FinalizationRegistry,\n\t'%Function%': $Function,\n\t'%GeneratorFunction%': needsEval,\n\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,\n\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,\n\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,\n\t'%isFinite%': isFinite,\n\t'%isNaN%': isNaN,\n\t'%IteratorPrototype%': hasSymbols && getProto ? getProto(getProto([][Symbol.iterator]())) : undefined,\n\t'%JSON%': typeof JSON === 'object' ? JSON : undefined,\n\t'%Map%': typeof Map === 'undefined' ? undefined : Map,\n\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Map()[Symbol.iterator]()),\n\t'%Math%': Math,\n\t'%Number%': Number,\n\t'%Object%': Object,\n\t'%parseFloat%': parseFloat,\n\t'%parseInt%': parseInt,\n\t'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,\n\t'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,\n\t'%RangeError%': $RangeError,\n\t'%ReferenceError%': $ReferenceError,\n\t'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,\n\t'%RegExp%': RegExp,\n\t'%Set%': typeof Set === 'undefined' ? undefined : Set,\n\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Set()[Symbol.iterator]()),\n\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,\n\t'%String%': String,\n\t'%StringIteratorPrototype%': hasSymbols && getProto ? getProto(''[Symbol.iterator]()) : undefined,\n\t'%Symbol%': hasSymbols ? Symbol : undefined,\n\t'%SyntaxError%': $SyntaxError,\n\t'%ThrowTypeError%': ThrowTypeError,\n\t'%TypedArray%': TypedArray,\n\t'%TypeError%': $TypeError,\n\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,\n\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,\n\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,\n\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,\n\t'%URIError%': $URIError,\n\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,\n\t'%WeakRef%': typeof WeakRef === 'undefined' ? undefined : WeakRef,\n\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet\n};\n\nif (getProto) {\n\ttry {\n\t\tnull.error; // eslint-disable-line no-unused-expressions\n\t} catch (e) {\n\t\t// https://github.com/tc39/proposal-shadowrealm/pull/384#issuecomment-1364264229\n\t\tvar errorProto = getProto(getProto(e));\n\t\tINTRINSICS['%Error.prototype%'] = errorProto;\n\t}\n}\n\nvar doEval = function doEval(name) {\n\tvar value;\n\tif (name === '%AsyncFunction%') {\n\t\tvalue = getEvalledConstructor('async function () {}');\n\t} else if (name === '%GeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('function* () {}');\n\t} else if (name === '%AsyncGeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('async function* () {}');\n\t} else if (name === '%AsyncGenerator%') {\n\t\tvar fn = doEval('%AsyncGeneratorFunction%');\n\t\tif (fn) {\n\t\t\tvalue = fn.prototype;\n\t\t}\n\t} else if (name === '%AsyncIteratorPrototype%') {\n\t\tvar gen = doEval('%AsyncGenerator%');\n\t\tif (gen && getProto) {\n\t\t\tvalue = getProto(gen.prototype);\n\t\t}\n\t}\n\n\tINTRINSICS[name] = value;\n\n\treturn value;\n};\n\nvar LEGACY_ALIASES = {\n\t__proto__: null,\n\t'%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],\n\t'%ArrayPrototype%': ['Array', 'prototype'],\n\t'%ArrayProto_entries%': ['Array', 'prototype', 'entries'],\n\t'%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'],\n\t'%ArrayProto_keys%': ['Array', 'prototype', 'keys'],\n\t'%ArrayProto_values%': ['Array', 'prototype', 'values'],\n\t'%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'],\n\t'%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'],\n\t'%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'],\n\t'%BooleanPrototype%': ['Boolean', 'prototype'],\n\t'%DataViewPrototype%': ['DataView', 'prototype'],\n\t'%DatePrototype%': ['Date', 'prototype'],\n\t'%ErrorPrototype%': ['Error', 'prototype'],\n\t'%EvalErrorPrototype%': ['EvalError', 'prototype'],\n\t'%Float32ArrayPrototype%': ['Float32Array', 'prototype'],\n\t'%Float64ArrayPrototype%': ['Float64Array', 'prototype'],\n\t'%FunctionPrototype%': ['Function', 'prototype'],\n\t'%Generator%': ['GeneratorFunction', 'prototype'],\n\t'%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'],\n\t'%Int8ArrayPrototype%': ['Int8Array', 'prototype'],\n\t'%Int16ArrayPrototype%': ['Int16Array', 'prototype'],\n\t'%Int32ArrayPrototype%': ['Int32Array', 'prototype'],\n\t'%JSONParse%': ['JSON', 'parse'],\n\t'%JSONStringify%': ['JSON', 'stringify'],\n\t'%MapPrototype%': ['Map', 'prototype'],\n\t'%NumberPrototype%': ['Number', 'prototype'],\n\t'%ObjectPrototype%': ['Object', 'prototype'],\n\t'%ObjProto_toString%': ['Object', 'prototype', 'toString'],\n\t'%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'],\n\t'%PromisePrototype%': ['Promise', 'prototype'],\n\t'%PromiseProto_then%': ['Promise', 'prototype', 'then'],\n\t'%Promise_all%': ['Promise', 'all'],\n\t'%Promise_reject%': ['Promise', 'reject'],\n\t'%Promise_resolve%': ['Promise', 'resolve'],\n\t'%RangeErrorPrototype%': ['RangeError', 'prototype'],\n\t'%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'],\n\t'%RegExpPrototype%': ['RegExp', 'prototype'],\n\t'%SetPrototype%': ['Set', 'prototype'],\n\t'%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'],\n\t'%StringPrototype%': ['String', 'prototype'],\n\t'%SymbolPrototype%': ['Symbol', 'prototype'],\n\t'%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'],\n\t'%TypedArrayPrototype%': ['TypedArray', 'prototype'],\n\t'%TypeErrorPrototype%': ['TypeError', 'prototype'],\n\t'%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'],\n\t'%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'],\n\t'%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'],\n\t'%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'],\n\t'%URIErrorPrototype%': ['URIError', 'prototype'],\n\t'%WeakMapPrototype%': ['WeakMap', 'prototype'],\n\t'%WeakSetPrototype%': ['WeakSet', 'prototype']\n};\n\nvar bind = require('function-bind');\nvar hasOwn = require('hasown');\nvar $concat = bind.call(Function.call, Array.prototype.concat);\nvar $spliceApply = bind.call(Function.apply, Array.prototype.splice);\nvar $replace = bind.call(Function.call, String.prototype.replace);\nvar $strSlice = bind.call(Function.call, String.prototype.slice);\nvar $exec = bind.call(Function.call, RegExp.prototype.exec);\n\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\nvar rePropName = /[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g;\nvar reEscapeChar = /\\\\(\\\\)?/g; /** Used to match backslashes in property paths. */\nvar stringToPath = function stringToPath(string) {\n\tvar first = $strSlice(string, 0, 1);\n\tvar last = $strSlice(string, -1);\n\tif (first === '%' && last !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected closing `%`');\n\t} else if (last === '%' && first !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected opening `%`');\n\t}\n\tvar result = [];\n\t$replace(string, rePropName, function (match, number, quote, subString) {\n\t\tresult[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match;\n\t});\n\treturn result;\n};\n/* end adaptation */\n\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\n\tvar intrinsicName = name;\n\tvar alias;\n\tif (hasOwn(LEGACY_ALIASES, intrinsicName)) {\n\t\talias = LEGACY_ALIASES[intrinsicName];\n\t\tintrinsicName = '%' + alias[0] + '%';\n\t}\n\n\tif (hasOwn(INTRINSICS, intrinsicName)) {\n\t\tvar value = INTRINSICS[intrinsicName];\n\t\tif (value === needsEval) {\n\t\t\tvalue = doEval(intrinsicName);\n\t\t}\n\t\tif (typeof value === 'undefined' && !allowMissing) {\n\t\t\tthrow new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\n\t\t}\n\n\t\treturn {\n\t\t\talias: alias,\n\t\t\tname: intrinsicName,\n\t\t\tvalue: value\n\t\t};\n\t}\n\n\tthrow new $SyntaxError('intrinsic ' + name + ' does not exist!');\n};\n\nmodule.exports = function GetIntrinsic(name, allowMissing) {\n\tif (typeof name !== 'string' || name.length === 0) {\n\t\tthrow new $TypeError('intrinsic name must be a non-empty string');\n\t}\n\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\n\t\tthrow new $TypeError('\"allowMissing\" argument must be a boolean');\n\t}\n\n\tif ($exec(/^%?[^%]*%?$/, name) === null) {\n\t\tthrow new $SyntaxError('`%` may not be present anywhere but at the beginning and end of the intrinsic name');\n\t}\n\tvar parts = stringToPath(name);\n\tvar intrinsicBaseName = parts.length > 0 ? parts[0] : '';\n\n\tvar intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);\n\tvar intrinsicRealName = intrinsic.name;\n\tvar value = intrinsic.value;\n\tvar skipFurtherCaching = false;\n\n\tvar alias = intrinsic.alias;\n\tif (alias) {\n\t\tintrinsicBaseName = alias[0];\n\t\t$spliceApply(parts, $concat([0, 1], alias));\n\t}\n\n\tfor (var i = 1, isOwn = true; i < parts.length; i += 1) {\n\t\tvar part = parts[i];\n\t\tvar first = $strSlice(part, 0, 1);\n\t\tvar last = $strSlice(part, -1);\n\t\tif (\n\t\t\t(\n\t\t\t\t(first === '\"' || first === \"'\" || first === '`')\n\t\t\t\t|| (last === '\"' || last === \"'\" || last === '`')\n\t\t\t)\n\t\t\t&& first !== last\n\t\t) {\n\t\t\tthrow new $SyntaxError('property names with quotes must have matching quotes');\n\t\t}\n\t\tif (part === 'constructor' || !isOwn) {\n\t\t\tskipFurtherCaching = true;\n\t\t}\n\n\t\tintrinsicBaseName += '.' + part;\n\t\tintrinsicRealName = '%' + intrinsicBaseName + '%';\n\n\t\tif (hasOwn(INTRINSICS, intrinsicRealName)) {\n\t\t\tvalue = INTRINSICS[intrinsicRealName];\n\t\t} else if (value != null) {\n\t\t\tif (!(part in value)) {\n\t\t\t\tif (!allowMissing) {\n\t\t\t\t\tthrow new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');\n\t\t\t\t}\n\t\t\t\treturn void undefined;\n\t\t\t}\n\t\t\tif ($gOPD && (i + 1) >= parts.length) {\n\t\t\t\tvar desc = $gOPD(value, part);\n\t\t\t\tisOwn = !!desc;\n\n\t\t\t\t// By convention, when a data property is converted to an accessor\n\t\t\t\t// property to emulate a data property that does not suffer from\n\t\t\t\t// the override mistake, that accessor's getter is marked with\n\t\t\t\t// an `originalValue` property. Here, when we detect this, we\n\t\t\t\t// uphold the illusion by pretending to see that original data\n\t\t\t\t// property, i.e., returning the value rather than the getter\n\t\t\t\t// itself.\n\t\t\t\tif (isOwn && 'get' in desc && !('originalValue' in desc.get)) {\n\t\t\t\t\tvalue = desc.get;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = value[part];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tisOwn = hasOwn(value, part);\n\t\t\t\tvalue = value[part];\n\t\t\t}\n\n\t\t\tif (isOwn && !skipFurtherCaching) {\n\t\t\t\tINTRINSICS[intrinsicRealName] = value;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n","'use strict'\n\nvar isUrl = require('is-url')\nvar queryString = require('query-string')\nvar normalizeUrl = require('normalize-url')\n\nmodule.exports = function(queryParam, url) {\n if (typeof queryParam !== 'string' || typeof url !== 'string') {\n throw new TypeError('get-query-param expected two strings')\n }\n\n var fullUrl = /^[\\/\\?]/.test(url) ? `foo.bar${url}` : url\n var normalizedUrl = normalizeUrl(fullUrl)\n\n if (!isUrl(normalizedUrl)) { return }\n\n var parsed = queryString.parse(normalizedUrl.split('?')[1])\n\n return parsed[queryParam]\n}\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);\n\nif ($gOPD) {\n\ttry {\n\t\t$gOPD([], 'length');\n\t} catch (e) {\n\t\t// IE 8 has a broken gOPD\n\t\t$gOPD = null;\n\t}\n}\n\nmodule.exports = $gOPD;\n","/*! Hammer.JS - v2.0.7 - 2016-04-22\n * http://hammerjs.github.io/\n *\n * Copyright (c) 2016 Jorik Tangelder;\n * Licensed under the MIT license */\n(function(window, document, exportName, undefined) {\n 'use strict';\n\nvar VENDOR_PREFIXES = ['', 'webkit', 'Moz', 'MS', 'ms', 'o'];\nvar TEST_ELEMENT = document.createElement('div');\n\nvar TYPE_FUNCTION = 'function';\n\nvar round = Math.round;\nvar abs = Math.abs;\nvar now = Date.now;\n\n/**\n * set a timeout with a given scope\n * @param {Function} fn\n * @param {Number} timeout\n * @param {Object} context\n * @returns {number}\n */\nfunction setTimeoutContext(fn, timeout, context) {\n return setTimeout(bindFn(fn, context), timeout);\n}\n\n/**\n * if the argument is an array, we want to execute the fn on each entry\n * if it aint an array we don't want to do a thing.\n * this is used by all the methods that accept a single and array argument.\n * @param {*|Array} arg\n * @param {String} fn\n * @param {Object} [context]\n * @returns {Boolean}\n */\nfunction invokeArrayArg(arg, fn, context) {\n if (Array.isArray(arg)) {\n each(arg, context[fn], context);\n return true;\n }\n return false;\n}\n\n/**\n * walk objects and arrays\n * @param {Object} obj\n * @param {Function} iterator\n * @param {Object} context\n */\nfunction each(obj, iterator, context) {\n var i;\n\n if (!obj) {\n return;\n }\n\n if (obj.forEach) {\n obj.forEach(iterator, context);\n } else if (obj.length !== undefined) {\n i = 0;\n while (i < obj.length) {\n iterator.call(context, obj[i], i, obj);\n i++;\n }\n } else {\n for (i in obj) {\n obj.hasOwnProperty(i) && iterator.call(context, obj[i], i, obj);\n }\n }\n}\n\n/**\n * wrap a method with a deprecation warning and stack trace\n * @param {Function} method\n * @param {String} name\n * @param {String} message\n * @returns {Function} A new function wrapping the supplied method.\n */\nfunction deprecate(method, name, message) {\n var deprecationMessage = 'DEPRECATED METHOD: ' + name + '\\n' + message + ' AT \\n';\n return function() {\n var e = new Error('get-stack-trace');\n var stack = e && e.stack ? e.stack.replace(/^[^\\(]+?[\\n$]/gm, '')\n .replace(/^\\s+at\\s+/gm, '')\n .replace(/^Object.\\s*\\(/gm, '{anonymous}()@') : 'Unknown Stack Trace';\n\n var log = window.console && (window.console.warn || window.console.log);\n if (log) {\n log.call(window.console, deprecationMessage, stack);\n }\n return method.apply(this, arguments);\n };\n}\n\n/**\n * extend object.\n * means that properties in dest will be overwritten by the ones in src.\n * @param {Object} target\n * @param {...Object} objects_to_assign\n * @returns {Object} target\n */\nvar assign;\nif (typeof Object.assign !== 'function') {\n assign = function assign(target) {\n if (target === undefined || target === null) {\n throw new TypeError('Cannot convert undefined or null to object');\n }\n\n var output = Object(target);\n for (var index = 1; index < arguments.length; index++) {\n var source = arguments[index];\n if (source !== undefined && source !== null) {\n for (var nextKey in source) {\n if (source.hasOwnProperty(nextKey)) {\n output[nextKey] = source[nextKey];\n }\n }\n }\n }\n return output;\n };\n} else {\n assign = Object.assign;\n}\n\n/**\n * extend object.\n * means that properties in dest will be overwritten by the ones in src.\n * @param {Object} dest\n * @param {Object} src\n * @param {Boolean} [merge=false]\n * @returns {Object} dest\n */\nvar extend = deprecate(function extend(dest, src, merge) {\n var keys = Object.keys(src);\n var i = 0;\n while (i < keys.length) {\n if (!merge || (merge && dest[keys[i]] === undefined)) {\n dest[keys[i]] = src[keys[i]];\n }\n i++;\n }\n return dest;\n}, 'extend', 'Use `assign`.');\n\n/**\n * merge the values from src in the dest.\n * means that properties that exist in dest will not be overwritten by src\n * @param {Object} dest\n * @param {Object} src\n * @returns {Object} dest\n */\nvar merge = deprecate(function merge(dest, src) {\n return extend(dest, src, true);\n}, 'merge', 'Use `assign`.');\n\n/**\n * simple class inheritance\n * @param {Function} child\n * @param {Function} base\n * @param {Object} [properties]\n */\nfunction inherit(child, base, properties) {\n var baseP = base.prototype,\n childP;\n\n childP = child.prototype = Object.create(baseP);\n childP.constructor = child;\n childP._super = baseP;\n\n if (properties) {\n assign(childP, properties);\n }\n}\n\n/**\n * simple function bind\n * @param {Function} fn\n * @param {Object} context\n * @returns {Function}\n */\nfunction bindFn(fn, context) {\n return function boundFn() {\n return fn.apply(context, arguments);\n };\n}\n\n/**\n * let a boolean value also be a function that must return a boolean\n * this first item in args will be used as the context\n * @param {Boolean|Function} val\n * @param {Array} [args]\n * @returns {Boolean}\n */\nfunction boolOrFn(val, args) {\n if (typeof val == TYPE_FUNCTION) {\n return val.apply(args ? args[0] || undefined : undefined, args);\n }\n return val;\n}\n\n/**\n * use the val2 when val1 is undefined\n * @param {*} val1\n * @param {*} val2\n * @returns {*}\n */\nfunction ifUndefined(val1, val2) {\n return (val1 === undefined) ? val2 : val1;\n}\n\n/**\n * addEventListener with multiple events at once\n * @param {EventTarget} target\n * @param {String} types\n * @param {Function} handler\n */\nfunction addEventListeners(target, types, handler) {\n each(splitStr(types), function(type) {\n target.addEventListener(type, handler, false);\n });\n}\n\n/**\n * removeEventListener with multiple events at once\n * @param {EventTarget} target\n * @param {String} types\n * @param {Function} handler\n */\nfunction removeEventListeners(target, types, handler) {\n each(splitStr(types), function(type) {\n target.removeEventListener(type, handler, false);\n });\n}\n\n/**\n * find if a node is in the given parent\n * @method hasParent\n * @param {HTMLElement} node\n * @param {HTMLElement} parent\n * @return {Boolean} found\n */\nfunction hasParent(node, parent) {\n while (node) {\n if (node == parent) {\n return true;\n }\n node = node.parentNode;\n }\n return false;\n}\n\n/**\n * small indexOf wrapper\n * @param {String} str\n * @param {String} find\n * @returns {Boolean} found\n */\nfunction inStr(str, find) {\n return str.indexOf(find) > -1;\n}\n\n/**\n * split string on whitespace\n * @param {String} str\n * @returns {Array} words\n */\nfunction splitStr(str) {\n return str.trim().split(/\\s+/g);\n}\n\n/**\n * find if a array contains the object using indexOf or a simple polyFill\n * @param {Array} src\n * @param {String} find\n * @param {String} [findByKey]\n * @return {Boolean|Number} false when not found, or the index\n */\nfunction inArray(src, find, findByKey) {\n if (src.indexOf && !findByKey) {\n return src.indexOf(find);\n } else {\n var i = 0;\n while (i < src.length) {\n if ((findByKey && src[i][findByKey] == find) || (!findByKey && src[i] === find)) {\n return i;\n }\n i++;\n }\n return -1;\n }\n}\n\n/**\n * convert array-like objects to real arrays\n * @param {Object} obj\n * @returns {Array}\n */\nfunction toArray(obj) {\n return Array.prototype.slice.call(obj, 0);\n}\n\n/**\n * unique array with objects based on a key (like 'id') or just by the array's value\n * @param {Array} src [{id:1},{id:2},{id:1}]\n * @param {String} [key]\n * @param {Boolean} [sort=False]\n * @returns {Array} [{id:1},{id:2}]\n */\nfunction uniqueArray(src, key, sort) {\n var results = [];\n var values = [];\n var i = 0;\n\n while (i < src.length) {\n var val = key ? src[i][key] : src[i];\n if (inArray(values, val) < 0) {\n results.push(src[i]);\n }\n values[i] = val;\n i++;\n }\n\n if (sort) {\n if (!key) {\n results = results.sort();\n } else {\n results = results.sort(function sortUniqueArray(a, b) {\n return a[key] > b[key];\n });\n }\n }\n\n return results;\n}\n\n/**\n * get the prefixed property\n * @param {Object} obj\n * @param {String} property\n * @returns {String|Undefined} prefixed\n */\nfunction prefixed(obj, property) {\n var prefix, prop;\n var camelProp = property[0].toUpperCase() + property.slice(1);\n\n var i = 0;\n while (i < VENDOR_PREFIXES.length) {\n prefix = VENDOR_PREFIXES[i];\n prop = (prefix) ? prefix + camelProp : property;\n\n if (prop in obj) {\n return prop;\n }\n i++;\n }\n return undefined;\n}\n\n/**\n * get a unique id\n * @returns {number} uniqueId\n */\nvar _uniqueId = 1;\nfunction uniqueId() {\n return _uniqueId++;\n}\n\n/**\n * get the window object of an element\n * @param {HTMLElement} element\n * @returns {DocumentView|Window}\n */\nfunction getWindowForElement(element) {\n var doc = element.ownerDocument || element;\n return (doc.defaultView || doc.parentWindow || window);\n}\n\nvar MOBILE_REGEX = /mobile|tablet|ip(ad|hone|od)|android/i;\n\nvar SUPPORT_TOUCH = ('ontouchstart' in window);\nvar SUPPORT_POINTER_EVENTS = prefixed(window, 'PointerEvent') !== undefined;\nvar SUPPORT_ONLY_TOUCH = SUPPORT_TOUCH && MOBILE_REGEX.test(navigator.userAgent);\n\nvar INPUT_TYPE_TOUCH = 'touch';\nvar INPUT_TYPE_PEN = 'pen';\nvar INPUT_TYPE_MOUSE = 'mouse';\nvar INPUT_TYPE_KINECT = 'kinect';\n\nvar COMPUTE_INTERVAL = 25;\n\nvar INPUT_START = 1;\nvar INPUT_MOVE = 2;\nvar INPUT_END = 4;\nvar INPUT_CANCEL = 8;\n\nvar DIRECTION_NONE = 1;\nvar DIRECTION_LEFT = 2;\nvar DIRECTION_RIGHT = 4;\nvar DIRECTION_UP = 8;\nvar DIRECTION_DOWN = 16;\n\nvar DIRECTION_HORIZONTAL = DIRECTION_LEFT | DIRECTION_RIGHT;\nvar DIRECTION_VERTICAL = DIRECTION_UP | DIRECTION_DOWN;\nvar DIRECTION_ALL = DIRECTION_HORIZONTAL | DIRECTION_VERTICAL;\n\nvar PROPS_XY = ['x', 'y'];\nvar PROPS_CLIENT_XY = ['clientX', 'clientY'];\n\n/**\n * create new input type manager\n * @param {Manager} manager\n * @param {Function} callback\n * @returns {Input}\n * @constructor\n */\nfunction Input(manager, callback) {\n var self = this;\n this.manager = manager;\n this.callback = callback;\n this.element = manager.element;\n this.target = manager.options.inputTarget;\n\n // smaller wrapper around the handler, for the scope and the enabled state of the manager,\n // so when disabled the input events are completely bypassed.\n this.domHandler = function(ev) {\n if (boolOrFn(manager.options.enable, [manager])) {\n self.handler(ev);\n }\n };\n\n this.init();\n\n}\n\nInput.prototype = {\n /**\n * should handle the inputEvent data and trigger the callback\n * @virtual\n */\n handler: function() { },\n\n /**\n * bind the events\n */\n init: function() {\n this.evEl && addEventListeners(this.element, this.evEl, this.domHandler);\n this.evTarget && addEventListeners(this.target, this.evTarget, this.domHandler);\n this.evWin && addEventListeners(getWindowForElement(this.element), this.evWin, this.domHandler);\n },\n\n /**\n * unbind the events\n */\n destroy: function() {\n this.evEl && removeEventListeners(this.element, this.evEl, this.domHandler);\n this.evTarget && removeEventListeners(this.target, this.evTarget, this.domHandler);\n this.evWin && removeEventListeners(getWindowForElement(this.element), this.evWin, this.domHandler);\n }\n};\n\n/**\n * create new input type manager\n * called by the Manager constructor\n * @param {Hammer} manager\n * @returns {Input}\n */\nfunction createInputInstance(manager) {\n var Type;\n var inputClass = manager.options.inputClass;\n\n if (inputClass) {\n Type = inputClass;\n } else if (SUPPORT_POINTER_EVENTS) {\n Type = PointerEventInput;\n } else if (SUPPORT_ONLY_TOUCH) {\n Type = TouchInput;\n } else if (!SUPPORT_TOUCH) {\n Type = MouseInput;\n } else {\n Type = TouchMouseInput;\n }\n return new (Type)(manager, inputHandler);\n}\n\n/**\n * handle input events\n * @param {Manager} manager\n * @param {String} eventType\n * @param {Object} input\n */\nfunction inputHandler(manager, eventType, input) {\n var pointersLen = input.pointers.length;\n var changedPointersLen = input.changedPointers.length;\n var isFirst = (eventType & INPUT_START && (pointersLen - changedPointersLen === 0));\n var isFinal = (eventType & (INPUT_END | INPUT_CANCEL) && (pointersLen - changedPointersLen === 0));\n\n input.isFirst = !!isFirst;\n input.isFinal = !!isFinal;\n\n if (isFirst) {\n manager.session = {};\n }\n\n // source event is the normalized value of the domEvents\n // like 'touchstart, mouseup, pointerdown'\n input.eventType = eventType;\n\n // compute scale, rotation etc\n computeInputData(manager, input);\n\n // emit secret event\n manager.emit('hammer.input', input);\n\n manager.recognize(input);\n manager.session.prevInput = input;\n}\n\n/**\n * extend the data with some usable properties like scale, rotate, velocity etc\n * @param {Object} manager\n * @param {Object} input\n */\nfunction computeInputData(manager, input) {\n var session = manager.session;\n var pointers = input.pointers;\n var pointersLength = pointers.length;\n\n // store the first input to calculate the distance and direction\n if (!session.firstInput) {\n session.firstInput = simpleCloneInputData(input);\n }\n\n // to compute scale and rotation we need to store the multiple touches\n if (pointersLength > 1 && !session.firstMultiple) {\n session.firstMultiple = simpleCloneInputData(input);\n } else if (pointersLength === 1) {\n session.firstMultiple = false;\n }\n\n var firstInput = session.firstInput;\n var firstMultiple = session.firstMultiple;\n var offsetCenter = firstMultiple ? firstMultiple.center : firstInput.center;\n\n var center = input.center = getCenter(pointers);\n input.timeStamp = now();\n input.deltaTime = input.timeStamp - firstInput.timeStamp;\n\n input.angle = getAngle(offsetCenter, center);\n input.distance = getDistance(offsetCenter, center);\n\n computeDeltaXY(session, input);\n input.offsetDirection = getDirection(input.deltaX, input.deltaY);\n\n var overallVelocity = getVelocity(input.deltaTime, input.deltaX, input.deltaY);\n input.overallVelocityX = overallVelocity.x;\n input.overallVelocityY = overallVelocity.y;\n input.overallVelocity = (abs(overallVelocity.x) > abs(overallVelocity.y)) ? overallVelocity.x : overallVelocity.y;\n\n input.scale = firstMultiple ? getScale(firstMultiple.pointers, pointers) : 1;\n input.rotation = firstMultiple ? getRotation(firstMultiple.pointers, pointers) : 0;\n\n input.maxPointers = !session.prevInput ? input.pointers.length : ((input.pointers.length >\n session.prevInput.maxPointers) ? input.pointers.length : session.prevInput.maxPointers);\n\n computeIntervalInputData(session, input);\n\n // find the correct target\n var target = manager.element;\n if (hasParent(input.srcEvent.target, target)) {\n target = input.srcEvent.target;\n }\n input.target = target;\n}\n\nfunction computeDeltaXY(session, input) {\n var center = input.center;\n var offset = session.offsetDelta || {};\n var prevDelta = session.prevDelta || {};\n var prevInput = session.prevInput || {};\n\n if (input.eventType === INPUT_START || prevInput.eventType === INPUT_END) {\n prevDelta = session.prevDelta = {\n x: prevInput.deltaX || 0,\n y: prevInput.deltaY || 0\n };\n\n offset = session.offsetDelta = {\n x: center.x,\n y: center.y\n };\n }\n\n input.deltaX = prevDelta.x + (center.x - offset.x);\n input.deltaY = prevDelta.y + (center.y - offset.y);\n}\n\n/**\n * velocity is calculated every x ms\n * @param {Object} session\n * @param {Object} input\n */\nfunction computeIntervalInputData(session, input) {\n var last = session.lastInterval || input,\n deltaTime = input.timeStamp - last.timeStamp,\n velocity, velocityX, velocityY, direction;\n\n if (input.eventType != INPUT_CANCEL && (deltaTime > COMPUTE_INTERVAL || last.velocity === undefined)) {\n var deltaX = input.deltaX - last.deltaX;\n var deltaY = input.deltaY - last.deltaY;\n\n var v = getVelocity(deltaTime, deltaX, deltaY);\n velocityX = v.x;\n velocityY = v.y;\n velocity = (abs(v.x) > abs(v.y)) ? v.x : v.y;\n direction = getDirection(deltaX, deltaY);\n\n session.lastInterval = input;\n } else {\n // use latest velocity info if it doesn't overtake a minimum period\n velocity = last.velocity;\n velocityX = last.velocityX;\n velocityY = last.velocityY;\n direction = last.direction;\n }\n\n input.velocity = velocity;\n input.velocityX = velocityX;\n input.velocityY = velocityY;\n input.direction = direction;\n}\n\n/**\n * create a simple clone from the input used for storage of firstInput and firstMultiple\n * @param {Object} input\n * @returns {Object} clonedInputData\n */\nfunction simpleCloneInputData(input) {\n // make a simple copy of the pointers because we will get a reference if we don't\n // we only need clientXY for the calculations\n var pointers = [];\n var i = 0;\n while (i < input.pointers.length) {\n pointers[i] = {\n clientX: round(input.pointers[i].clientX),\n clientY: round(input.pointers[i].clientY)\n };\n i++;\n }\n\n return {\n timeStamp: now(),\n pointers: pointers,\n center: getCenter(pointers),\n deltaX: input.deltaX,\n deltaY: input.deltaY\n };\n}\n\n/**\n * get the center of all the pointers\n * @param {Array} pointers\n * @return {Object} center contains `x` and `y` properties\n */\nfunction getCenter(pointers) {\n var pointersLength = pointers.length;\n\n // no need to loop when only one touch\n if (pointersLength === 1) {\n return {\n x: round(pointers[0].clientX),\n y: round(pointers[0].clientY)\n };\n }\n\n var x = 0, y = 0, i = 0;\n while (i < pointersLength) {\n x += pointers[i].clientX;\n y += pointers[i].clientY;\n i++;\n }\n\n return {\n x: round(x / pointersLength),\n y: round(y / pointersLength)\n };\n}\n\n/**\n * calculate the velocity between two points. unit is in px per ms.\n * @param {Number} deltaTime\n * @param {Number} x\n * @param {Number} y\n * @return {Object} velocity `x` and `y`\n */\nfunction getVelocity(deltaTime, x, y) {\n return {\n x: x / deltaTime || 0,\n y: y / deltaTime || 0\n };\n}\n\n/**\n * get the direction between two points\n * @param {Number} x\n * @param {Number} y\n * @return {Number} direction\n */\nfunction getDirection(x, y) {\n if (x === y) {\n return DIRECTION_NONE;\n }\n\n if (abs(x) >= abs(y)) {\n return x < 0 ? DIRECTION_LEFT : DIRECTION_RIGHT;\n }\n return y < 0 ? DIRECTION_UP : DIRECTION_DOWN;\n}\n\n/**\n * calculate the absolute distance between two points\n * @param {Object} p1 {x, y}\n * @param {Object} p2 {x, y}\n * @param {Array} [props] containing x and y keys\n * @return {Number} distance\n */\nfunction getDistance(p1, p2, props) {\n if (!props) {\n props = PROPS_XY;\n }\n var x = p2[props[0]] - p1[props[0]],\n y = p2[props[1]] - p1[props[1]];\n\n return Math.sqrt((x * x) + (y * y));\n}\n\n/**\n * calculate the angle between two coordinates\n * @param {Object} p1\n * @param {Object} p2\n * @param {Array} [props] containing x and y keys\n * @return {Number} angle\n */\nfunction getAngle(p1, p2, props) {\n if (!props) {\n props = PROPS_XY;\n }\n var x = p2[props[0]] - p1[props[0]],\n y = p2[props[1]] - p1[props[1]];\n return Math.atan2(y, x) * 180 / Math.PI;\n}\n\n/**\n * calculate the rotation degrees between two pointersets\n * @param {Array} start array of pointers\n * @param {Array} end array of pointers\n * @return {Number} rotation\n */\nfunction getRotation(start, end) {\n return getAngle(end[1], end[0], PROPS_CLIENT_XY) + getAngle(start[1], start[0], PROPS_CLIENT_XY);\n}\n\n/**\n * calculate the scale factor between two pointersets\n * no scale is 1, and goes down to 0 when pinched together, and bigger when pinched out\n * @param {Array} start array of pointers\n * @param {Array} end array of pointers\n * @return {Number} scale\n */\nfunction getScale(start, end) {\n return getDistance(end[0], end[1], PROPS_CLIENT_XY) / getDistance(start[0], start[1], PROPS_CLIENT_XY);\n}\n\nvar MOUSE_INPUT_MAP = {\n mousedown: INPUT_START,\n mousemove: INPUT_MOVE,\n mouseup: INPUT_END\n};\n\nvar MOUSE_ELEMENT_EVENTS = 'mousedown';\nvar MOUSE_WINDOW_EVENTS = 'mousemove mouseup';\n\n/**\n * Mouse events input\n * @constructor\n * @extends Input\n */\nfunction MouseInput() {\n this.evEl = MOUSE_ELEMENT_EVENTS;\n this.evWin = MOUSE_WINDOW_EVENTS;\n\n this.pressed = false; // mousedown state\n\n Input.apply(this, arguments);\n}\n\ninherit(MouseInput, Input, {\n /**\n * handle mouse events\n * @param {Object} ev\n */\n handler: function MEhandler(ev) {\n var eventType = MOUSE_INPUT_MAP[ev.type];\n\n // on start we want to have the left mouse button down\n if (eventType & INPUT_START && ev.button === 0) {\n this.pressed = true;\n }\n\n if (eventType & INPUT_MOVE && ev.which !== 1) {\n eventType = INPUT_END;\n }\n\n // mouse must be down\n if (!this.pressed) {\n return;\n }\n\n if (eventType & INPUT_END) {\n this.pressed = false;\n }\n\n this.callback(this.manager, eventType, {\n pointers: [ev],\n changedPointers: [ev],\n pointerType: INPUT_TYPE_MOUSE,\n srcEvent: ev\n });\n }\n});\n\nvar POINTER_INPUT_MAP = {\n pointerdown: INPUT_START,\n pointermove: INPUT_MOVE,\n pointerup: INPUT_END,\n pointercancel: INPUT_CANCEL,\n pointerout: INPUT_CANCEL\n};\n\n// in IE10 the pointer types is defined as an enum\nvar IE10_POINTER_TYPE_ENUM = {\n 2: INPUT_TYPE_TOUCH,\n 3: INPUT_TYPE_PEN,\n 4: INPUT_TYPE_MOUSE,\n 5: INPUT_TYPE_KINECT // see https://twitter.com/jacobrossi/status/480596438489890816\n};\n\nvar POINTER_ELEMENT_EVENTS = 'pointerdown';\nvar POINTER_WINDOW_EVENTS = 'pointermove pointerup pointercancel';\n\n// IE10 has prefixed support, and case-sensitive\nif (window.MSPointerEvent && !window.PointerEvent) {\n POINTER_ELEMENT_EVENTS = 'MSPointerDown';\n POINTER_WINDOW_EVENTS = 'MSPointerMove MSPointerUp MSPointerCancel';\n}\n\n/**\n * Pointer events input\n * @constructor\n * @extends Input\n */\nfunction PointerEventInput() {\n this.evEl = POINTER_ELEMENT_EVENTS;\n this.evWin = POINTER_WINDOW_EVENTS;\n\n Input.apply(this, arguments);\n\n this.store = (this.manager.session.pointerEvents = []);\n}\n\ninherit(PointerEventInput, Input, {\n /**\n * handle mouse events\n * @param {Object} ev\n */\n handler: function PEhandler(ev) {\n var store = this.store;\n var removePointer = false;\n\n var eventTypeNormalized = ev.type.toLowerCase().replace('ms', '');\n var eventType = POINTER_INPUT_MAP[eventTypeNormalized];\n var pointerType = IE10_POINTER_TYPE_ENUM[ev.pointerType] || ev.pointerType;\n\n var isTouch = (pointerType == INPUT_TYPE_TOUCH);\n\n // get index of the event in the store\n var storeIndex = inArray(store, ev.pointerId, 'pointerId');\n\n // start and mouse must be down\n if (eventType & INPUT_START && (ev.button === 0 || isTouch)) {\n if (storeIndex < 0) {\n store.push(ev);\n storeIndex = store.length - 1;\n }\n } else if (eventType & (INPUT_END | INPUT_CANCEL)) {\n removePointer = true;\n }\n\n // it not found, so the pointer hasn't been down (so it's probably a hover)\n if (storeIndex < 0) {\n return;\n }\n\n // update the event in the store\n store[storeIndex] = ev;\n\n this.callback(this.manager, eventType, {\n pointers: store,\n changedPointers: [ev],\n pointerType: pointerType,\n srcEvent: ev\n });\n\n if (removePointer) {\n // remove from the store\n store.splice(storeIndex, 1);\n }\n }\n});\n\nvar SINGLE_TOUCH_INPUT_MAP = {\n touchstart: INPUT_START,\n touchmove: INPUT_MOVE,\n touchend: INPUT_END,\n touchcancel: INPUT_CANCEL\n};\n\nvar SINGLE_TOUCH_TARGET_EVENTS = 'touchstart';\nvar SINGLE_TOUCH_WINDOW_EVENTS = 'touchstart touchmove touchend touchcancel';\n\n/**\n * Touch events input\n * @constructor\n * @extends Input\n */\nfunction SingleTouchInput() {\n this.evTarget = SINGLE_TOUCH_TARGET_EVENTS;\n this.evWin = SINGLE_TOUCH_WINDOW_EVENTS;\n this.started = false;\n\n Input.apply(this, arguments);\n}\n\ninherit(SingleTouchInput, Input, {\n handler: function TEhandler(ev) {\n var type = SINGLE_TOUCH_INPUT_MAP[ev.type];\n\n // should we handle the touch events?\n if (type === INPUT_START) {\n this.started = true;\n }\n\n if (!this.started) {\n return;\n }\n\n var touches = normalizeSingleTouches.call(this, ev, type);\n\n // when done, reset the started state\n if (type & (INPUT_END | INPUT_CANCEL) && touches[0].length - touches[1].length === 0) {\n this.started = false;\n }\n\n this.callback(this.manager, type, {\n pointers: touches[0],\n changedPointers: touches[1],\n pointerType: INPUT_TYPE_TOUCH,\n srcEvent: ev\n });\n }\n});\n\n/**\n * @this {TouchInput}\n * @param {Object} ev\n * @param {Number} type flag\n * @returns {undefined|Array} [all, changed]\n */\nfunction normalizeSingleTouches(ev, type) {\n var all = toArray(ev.touches);\n var changed = toArray(ev.changedTouches);\n\n if (type & (INPUT_END | INPUT_CANCEL)) {\n all = uniqueArray(all.concat(changed), 'identifier', true);\n }\n\n return [all, changed];\n}\n\nvar TOUCH_INPUT_MAP = {\n touchstart: INPUT_START,\n touchmove: INPUT_MOVE,\n touchend: INPUT_END,\n touchcancel: INPUT_CANCEL\n};\n\nvar TOUCH_TARGET_EVENTS = 'touchstart touchmove touchend touchcancel';\n\n/**\n * Multi-user touch events input\n * @constructor\n * @extends Input\n */\nfunction TouchInput() {\n this.evTarget = TOUCH_TARGET_EVENTS;\n this.targetIds = {};\n\n Input.apply(this, arguments);\n}\n\ninherit(TouchInput, Input, {\n handler: function MTEhandler(ev) {\n var type = TOUCH_INPUT_MAP[ev.type];\n var touches = getTouches.call(this, ev, type);\n if (!touches) {\n return;\n }\n\n this.callback(this.manager, type, {\n pointers: touches[0],\n changedPointers: touches[1],\n pointerType: INPUT_TYPE_TOUCH,\n srcEvent: ev\n });\n }\n});\n\n/**\n * @this {TouchInput}\n * @param {Object} ev\n * @param {Number} type flag\n * @returns {undefined|Array} [all, changed]\n */\nfunction getTouches(ev, type) {\n var allTouches = toArray(ev.touches);\n var targetIds = this.targetIds;\n\n // when there is only one touch, the process can be simplified\n if (type & (INPUT_START | INPUT_MOVE) && allTouches.length === 1) {\n targetIds[allTouches[0].identifier] = true;\n return [allTouches, allTouches];\n }\n\n var i,\n targetTouches,\n changedTouches = toArray(ev.changedTouches),\n changedTargetTouches = [],\n target = this.target;\n\n // get target touches from touches\n targetTouches = allTouches.filter(function(touch) {\n return hasParent(touch.target, target);\n });\n\n // collect touches\n if (type === INPUT_START) {\n i = 0;\n while (i < targetTouches.length) {\n targetIds[targetTouches[i].identifier] = true;\n i++;\n }\n }\n\n // filter changed touches to only contain touches that exist in the collected target ids\n i = 0;\n while (i < changedTouches.length) {\n if (targetIds[changedTouches[i].identifier]) {\n changedTargetTouches.push(changedTouches[i]);\n }\n\n // cleanup removed touches\n if (type & (INPUT_END | INPUT_CANCEL)) {\n delete targetIds[changedTouches[i].identifier];\n }\n i++;\n }\n\n if (!changedTargetTouches.length) {\n return;\n }\n\n return [\n // merge targetTouches with changedTargetTouches so it contains ALL touches, including 'end' and 'cancel'\n uniqueArray(targetTouches.concat(changedTargetTouches), 'identifier', true),\n changedTargetTouches\n ];\n}\n\n/**\n * Combined touch and mouse input\n *\n * Touch has a higher priority then mouse, and while touching no mouse events are allowed.\n * This because touch devices also emit mouse events while doing a touch.\n *\n * @constructor\n * @extends Input\n */\n\nvar DEDUP_TIMEOUT = 2500;\nvar DEDUP_DISTANCE = 25;\n\nfunction TouchMouseInput() {\n Input.apply(this, arguments);\n\n var handler = bindFn(this.handler, this);\n this.touch = new TouchInput(this.manager, handler);\n this.mouse = new MouseInput(this.manager, handler);\n\n this.primaryTouch = null;\n this.lastTouches = [];\n}\n\ninherit(TouchMouseInput, Input, {\n /**\n * handle mouse and touch events\n * @param {Hammer} manager\n * @param {String} inputEvent\n * @param {Object} inputData\n */\n handler: function TMEhandler(manager, inputEvent, inputData) {\n var isTouch = (inputData.pointerType == INPUT_TYPE_TOUCH),\n isMouse = (inputData.pointerType == INPUT_TYPE_MOUSE);\n\n if (isMouse && inputData.sourceCapabilities && inputData.sourceCapabilities.firesTouchEvents) {\n return;\n }\n\n // when we're in a touch event, record touches to de-dupe synthetic mouse event\n if (isTouch) {\n recordTouches.call(this, inputEvent, inputData);\n } else if (isMouse && isSyntheticEvent.call(this, inputData)) {\n return;\n }\n\n this.callback(manager, inputEvent, inputData);\n },\n\n /**\n * remove the event listeners\n */\n destroy: function destroy() {\n this.touch.destroy();\n this.mouse.destroy();\n }\n});\n\nfunction recordTouches(eventType, eventData) {\n if (eventType & INPUT_START) {\n this.primaryTouch = eventData.changedPointers[0].identifier;\n setLastTouch.call(this, eventData);\n } else if (eventType & (INPUT_END | INPUT_CANCEL)) {\n setLastTouch.call(this, eventData);\n }\n}\n\nfunction setLastTouch(eventData) {\n var touch = eventData.changedPointers[0];\n\n if (touch.identifier === this.primaryTouch) {\n var lastTouch = {x: touch.clientX, y: touch.clientY};\n this.lastTouches.push(lastTouch);\n var lts = this.lastTouches;\n var removeLastTouch = function() {\n var i = lts.indexOf(lastTouch);\n if (i > -1) {\n lts.splice(i, 1);\n }\n };\n setTimeout(removeLastTouch, DEDUP_TIMEOUT);\n }\n}\n\nfunction isSyntheticEvent(eventData) {\n var x = eventData.srcEvent.clientX, y = eventData.srcEvent.clientY;\n for (var i = 0; i < this.lastTouches.length; i++) {\n var t = this.lastTouches[i];\n var dx = Math.abs(x - t.x), dy = Math.abs(y - t.y);\n if (dx <= DEDUP_DISTANCE && dy <= DEDUP_DISTANCE) {\n return true;\n }\n }\n return false;\n}\n\nvar PREFIXED_TOUCH_ACTION = prefixed(TEST_ELEMENT.style, 'touchAction');\nvar NATIVE_TOUCH_ACTION = PREFIXED_TOUCH_ACTION !== undefined;\n\n// magical touchAction value\nvar TOUCH_ACTION_COMPUTE = 'compute';\nvar TOUCH_ACTION_AUTO = 'auto';\nvar TOUCH_ACTION_MANIPULATION = 'manipulation'; // not implemented\nvar TOUCH_ACTION_NONE = 'none';\nvar TOUCH_ACTION_PAN_X = 'pan-x';\nvar TOUCH_ACTION_PAN_Y = 'pan-y';\nvar TOUCH_ACTION_MAP = getTouchActionProps();\n\n/**\n * Touch Action\n * sets the touchAction property or uses the js alternative\n * @param {Manager} manager\n * @param {String} value\n * @constructor\n */\nfunction TouchAction(manager, value) {\n this.manager = manager;\n this.set(value);\n}\n\nTouchAction.prototype = {\n /**\n * set the touchAction value on the element or enable the polyfill\n * @param {String} value\n */\n set: function(value) {\n // find out the touch-action by the event handlers\n if (value == TOUCH_ACTION_COMPUTE) {\n value = this.compute();\n }\n\n if (NATIVE_TOUCH_ACTION && this.manager.element.style && TOUCH_ACTION_MAP[value]) {\n this.manager.element.style[PREFIXED_TOUCH_ACTION] = value;\n }\n this.actions = value.toLowerCase().trim();\n },\n\n /**\n * just re-set the touchAction value\n */\n update: function() {\n this.set(this.manager.options.touchAction);\n },\n\n /**\n * compute the value for the touchAction property based on the recognizer's settings\n * @returns {String} value\n */\n compute: function() {\n var actions = [];\n each(this.manager.recognizers, function(recognizer) {\n if (boolOrFn(recognizer.options.enable, [recognizer])) {\n actions = actions.concat(recognizer.getTouchAction());\n }\n });\n return cleanTouchActions(actions.join(' '));\n },\n\n /**\n * this method is called on each input cycle and provides the preventing of the browser behavior\n * @param {Object} input\n */\n preventDefaults: function(input) {\n var srcEvent = input.srcEvent;\n var direction = input.offsetDirection;\n\n // if the touch action did prevented once this session\n if (this.manager.session.prevented) {\n srcEvent.preventDefault();\n return;\n }\n\n var actions = this.actions;\n var hasNone = inStr(actions, TOUCH_ACTION_NONE) && !TOUCH_ACTION_MAP[TOUCH_ACTION_NONE];\n var hasPanY = inStr(actions, TOUCH_ACTION_PAN_Y) && !TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_Y];\n var hasPanX = inStr(actions, TOUCH_ACTION_PAN_X) && !TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_X];\n\n if (hasNone) {\n //do not prevent defaults if this is a tap gesture\n\n var isTapPointer = input.pointers.length === 1;\n var isTapMovement = input.distance < 2;\n var isTapTouchTime = input.deltaTime < 250;\n\n if (isTapPointer && isTapMovement && isTapTouchTime) {\n return;\n }\n }\n\n if (hasPanX && hasPanY) {\n // `pan-x pan-y` means browser handles all scrolling/panning, do not prevent\n return;\n }\n\n if (hasNone ||\n (hasPanY && direction & DIRECTION_HORIZONTAL) ||\n (hasPanX && direction & DIRECTION_VERTICAL)) {\n return this.preventSrc(srcEvent);\n }\n },\n\n /**\n * call preventDefault to prevent the browser's default behavior (scrolling in most cases)\n * @param {Object} srcEvent\n */\n preventSrc: function(srcEvent) {\n this.manager.session.prevented = true;\n srcEvent.preventDefault();\n }\n};\n\n/**\n * when the touchActions are collected they are not a valid value, so we need to clean things up. *\n * @param {String} actions\n * @returns {*}\n */\nfunction cleanTouchActions(actions) {\n // none\n if (inStr(actions, TOUCH_ACTION_NONE)) {\n return TOUCH_ACTION_NONE;\n }\n\n var hasPanX = inStr(actions, TOUCH_ACTION_PAN_X);\n var hasPanY = inStr(actions, TOUCH_ACTION_PAN_Y);\n\n // if both pan-x and pan-y are set (different recognizers\n // for different directions, e.g. horizontal pan but vertical swipe?)\n // we need none (as otherwise with pan-x pan-y combined none of these\n // recognizers will work, since the browser would handle all panning\n if (hasPanX && hasPanY) {\n return TOUCH_ACTION_NONE;\n }\n\n // pan-x OR pan-y\n if (hasPanX || hasPanY) {\n return hasPanX ? TOUCH_ACTION_PAN_X : TOUCH_ACTION_PAN_Y;\n }\n\n // manipulation\n if (inStr(actions, TOUCH_ACTION_MANIPULATION)) {\n return TOUCH_ACTION_MANIPULATION;\n }\n\n return TOUCH_ACTION_AUTO;\n}\n\nfunction getTouchActionProps() {\n if (!NATIVE_TOUCH_ACTION) {\n return false;\n }\n var touchMap = {};\n var cssSupports = window.CSS && window.CSS.supports;\n ['auto', 'manipulation', 'pan-y', 'pan-x', 'pan-x pan-y', 'none'].forEach(function(val) {\n\n // If css.supports is not supported but there is native touch-action assume it supports\n // all values. This is the case for IE 10 and 11.\n touchMap[val] = cssSupports ? window.CSS.supports('touch-action', val) : true;\n });\n return touchMap;\n}\n\n/**\n * Recognizer flow explained; *\n * All recognizers have the initial state of POSSIBLE when a input session starts.\n * The definition of a input session is from the first input until the last input, with all it's movement in it. *\n * Example session for mouse-input: mousedown -> mousemove -> mouseup\n *\n * On each recognizing cycle (see Manager.recognize) the .recognize() method is executed\n * which determines with state it should be.\n *\n * If the recognizer has the state FAILED, CANCELLED or RECOGNIZED (equals ENDED), it is reset to\n * POSSIBLE to give it another change on the next cycle.\n *\n * Possible\n * |\n * +-----+---------------+\n * | |\n * +-----+-----+ |\n * | | |\n * Failed Cancelled |\n * +-------+------+\n * | |\n * Recognized Began\n * |\n * Changed\n * |\n * Ended/Recognized\n */\nvar STATE_POSSIBLE = 1;\nvar STATE_BEGAN = 2;\nvar STATE_CHANGED = 4;\nvar STATE_ENDED = 8;\nvar STATE_RECOGNIZED = STATE_ENDED;\nvar STATE_CANCELLED = 16;\nvar STATE_FAILED = 32;\n\n/**\n * Recognizer\n * Every recognizer needs to extend from this class.\n * @constructor\n * @param {Object} options\n */\nfunction Recognizer(options) {\n this.options = assign({}, this.defaults, options || {});\n\n this.id = uniqueId();\n\n this.manager = null;\n\n // default is enable true\n this.options.enable = ifUndefined(this.options.enable, true);\n\n this.state = STATE_POSSIBLE;\n\n this.simultaneous = {};\n this.requireFail = [];\n}\n\nRecognizer.prototype = {\n /**\n * @virtual\n * @type {Object}\n */\n defaults: {},\n\n /**\n * set options\n * @param {Object} options\n * @return {Recognizer}\n */\n set: function(options) {\n assign(this.options, options);\n\n // also update the touchAction, in case something changed about the directions/enabled state\n this.manager && this.manager.touchAction.update();\n return this;\n },\n\n /**\n * recognize simultaneous with an other recognizer.\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n recognizeWith: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'recognizeWith', this)) {\n return this;\n }\n\n var simultaneous = this.simultaneous;\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n if (!simultaneous[otherRecognizer.id]) {\n simultaneous[otherRecognizer.id] = otherRecognizer;\n otherRecognizer.recognizeWith(this);\n }\n return this;\n },\n\n /**\n * drop the simultaneous link. it doesnt remove the link on the other recognizer.\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n dropRecognizeWith: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'dropRecognizeWith', this)) {\n return this;\n }\n\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n delete this.simultaneous[otherRecognizer.id];\n return this;\n },\n\n /**\n * recognizer can only run when an other is failing\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n requireFailure: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'requireFailure', this)) {\n return this;\n }\n\n var requireFail = this.requireFail;\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n if (inArray(requireFail, otherRecognizer) === -1) {\n requireFail.push(otherRecognizer);\n otherRecognizer.requireFailure(this);\n }\n return this;\n },\n\n /**\n * drop the requireFailure link. it does not remove the link on the other recognizer.\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n dropRequireFailure: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'dropRequireFailure', this)) {\n return this;\n }\n\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n var index = inArray(this.requireFail, otherRecognizer);\n if (index > -1) {\n this.requireFail.splice(index, 1);\n }\n return this;\n },\n\n /**\n * has require failures boolean\n * @returns {boolean}\n */\n hasRequireFailures: function() {\n return this.requireFail.length > 0;\n },\n\n /**\n * if the recognizer can recognize simultaneous with an other recognizer\n * @param {Recognizer} otherRecognizer\n * @returns {Boolean}\n */\n canRecognizeWith: function(otherRecognizer) {\n return !!this.simultaneous[otherRecognizer.id];\n },\n\n /**\n * You should use `tryEmit` instead of `emit` directly to check\n * that all the needed recognizers has failed before emitting.\n * @param {Object} input\n */\n emit: function(input) {\n var self = this;\n var state = this.state;\n\n function emit(event) {\n self.manager.emit(event, input);\n }\n\n // 'panstart' and 'panmove'\n if (state < STATE_ENDED) {\n emit(self.options.event + stateStr(state));\n }\n\n emit(self.options.event); // simple 'eventName' events\n\n if (input.additionalEvent) { // additional event(panleft, panright, pinchin, pinchout...)\n emit(input.additionalEvent);\n }\n\n // panend and pancancel\n if (state >= STATE_ENDED) {\n emit(self.options.event + stateStr(state));\n }\n },\n\n /**\n * Check that all the require failure recognizers has failed,\n * if true, it emits a gesture event,\n * otherwise, setup the state to FAILED.\n * @param {Object} input\n */\n tryEmit: function(input) {\n if (this.canEmit()) {\n return this.emit(input);\n }\n // it's failing anyway\n this.state = STATE_FAILED;\n },\n\n /**\n * can we emit?\n * @returns {boolean}\n */\n canEmit: function() {\n var i = 0;\n while (i < this.requireFail.length) {\n if (!(this.requireFail[i].state & (STATE_FAILED | STATE_POSSIBLE))) {\n return false;\n }\n i++;\n }\n return true;\n },\n\n /**\n * update the recognizer\n * @param {Object} inputData\n */\n recognize: function(inputData) {\n // make a new copy of the inputData\n // so we can change the inputData without messing up the other recognizers\n var inputDataClone = assign({}, inputData);\n\n // is is enabled and allow recognizing?\n if (!boolOrFn(this.options.enable, [this, inputDataClone])) {\n this.reset();\n this.state = STATE_FAILED;\n return;\n }\n\n // reset when we've reached the end\n if (this.state & (STATE_RECOGNIZED | STATE_CANCELLED | STATE_FAILED)) {\n this.state = STATE_POSSIBLE;\n }\n\n this.state = this.process(inputDataClone);\n\n // the recognizer has recognized a gesture\n // so trigger an event\n if (this.state & (STATE_BEGAN | STATE_CHANGED | STATE_ENDED | STATE_CANCELLED)) {\n this.tryEmit(inputDataClone);\n }\n },\n\n /**\n * return the state of the recognizer\n * the actual recognizing happens in this method\n * @virtual\n * @param {Object} inputData\n * @returns {Const} STATE\n */\n process: function(inputData) { }, // jshint ignore:line\n\n /**\n * return the preferred touch-action\n * @virtual\n * @returns {Array}\n */\n getTouchAction: function() { },\n\n /**\n * called when the gesture isn't allowed to recognize\n * like when another is being recognized or it is disabled\n * @virtual\n */\n reset: function() { }\n};\n\n/**\n * get a usable string, used as event postfix\n * @param {Const} state\n * @returns {String} state\n */\nfunction stateStr(state) {\n if (state & STATE_CANCELLED) {\n return 'cancel';\n } else if (state & STATE_ENDED) {\n return 'end';\n } else if (state & STATE_CHANGED) {\n return 'move';\n } else if (state & STATE_BEGAN) {\n return 'start';\n }\n return '';\n}\n\n/**\n * direction cons to string\n * @param {Const} direction\n * @returns {String}\n */\nfunction directionStr(direction) {\n if (direction == DIRECTION_DOWN) {\n return 'down';\n } else if (direction == DIRECTION_UP) {\n return 'up';\n } else if (direction == DIRECTION_LEFT) {\n return 'left';\n } else if (direction == DIRECTION_RIGHT) {\n return 'right';\n }\n return '';\n}\n\n/**\n * get a recognizer by name if it is bound to a manager\n * @param {Recognizer|String} otherRecognizer\n * @param {Recognizer} recognizer\n * @returns {Recognizer}\n */\nfunction getRecognizerByNameIfManager(otherRecognizer, recognizer) {\n var manager = recognizer.manager;\n if (manager) {\n return manager.get(otherRecognizer);\n }\n return otherRecognizer;\n}\n\n/**\n * This recognizer is just used as a base for the simple attribute recognizers.\n * @constructor\n * @extends Recognizer\n */\nfunction AttrRecognizer() {\n Recognizer.apply(this, arguments);\n}\n\ninherit(AttrRecognizer, Recognizer, {\n /**\n * @namespace\n * @memberof AttrRecognizer\n */\n defaults: {\n /**\n * @type {Number}\n * @default 1\n */\n pointers: 1\n },\n\n /**\n * Used to check if it the recognizer receives valid input, like input.distance > 10.\n * @memberof AttrRecognizer\n * @param {Object} input\n * @returns {Boolean} recognized\n */\n attrTest: function(input) {\n var optionPointers = this.options.pointers;\n return optionPointers === 0 || input.pointers.length === optionPointers;\n },\n\n /**\n * Process the input and return the state for the recognizer\n * @memberof AttrRecognizer\n * @param {Object} input\n * @returns {*} State\n */\n process: function(input) {\n var state = this.state;\n var eventType = input.eventType;\n\n var isRecognized = state & (STATE_BEGAN | STATE_CHANGED);\n var isValid = this.attrTest(input);\n\n // on cancel input and we've recognized before, return STATE_CANCELLED\n if (isRecognized && (eventType & INPUT_CANCEL || !isValid)) {\n return state | STATE_CANCELLED;\n } else if (isRecognized || isValid) {\n if (eventType & INPUT_END) {\n return state | STATE_ENDED;\n } else if (!(state & STATE_BEGAN)) {\n return STATE_BEGAN;\n }\n return state | STATE_CHANGED;\n }\n return STATE_FAILED;\n }\n});\n\n/**\n * Pan\n * Recognized when the pointer is down and moved in the allowed direction.\n * @constructor\n * @extends AttrRecognizer\n */\nfunction PanRecognizer() {\n AttrRecognizer.apply(this, arguments);\n\n this.pX = null;\n this.pY = null;\n}\n\ninherit(PanRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof PanRecognizer\n */\n defaults: {\n event: 'pan',\n threshold: 10,\n pointers: 1,\n direction: DIRECTION_ALL\n },\n\n getTouchAction: function() {\n var direction = this.options.direction;\n var actions = [];\n if (direction & DIRECTION_HORIZONTAL) {\n actions.push(TOUCH_ACTION_PAN_Y);\n }\n if (direction & DIRECTION_VERTICAL) {\n actions.push(TOUCH_ACTION_PAN_X);\n }\n return actions;\n },\n\n directionTest: function(input) {\n var options = this.options;\n var hasMoved = true;\n var distance = input.distance;\n var direction = input.direction;\n var x = input.deltaX;\n var y = input.deltaY;\n\n // lock to axis?\n if (!(direction & options.direction)) {\n if (options.direction & DIRECTION_HORIZONTAL) {\n direction = (x === 0) ? DIRECTION_NONE : (x < 0) ? DIRECTION_LEFT : DIRECTION_RIGHT;\n hasMoved = x != this.pX;\n distance = Math.abs(input.deltaX);\n } else {\n direction = (y === 0) ? DIRECTION_NONE : (y < 0) ? DIRECTION_UP : DIRECTION_DOWN;\n hasMoved = y != this.pY;\n distance = Math.abs(input.deltaY);\n }\n }\n input.direction = direction;\n return hasMoved && distance > options.threshold && direction & options.direction;\n },\n\n attrTest: function(input) {\n return AttrRecognizer.prototype.attrTest.call(this, input) &&\n (this.state & STATE_BEGAN || (!(this.state & STATE_BEGAN) && this.directionTest(input)));\n },\n\n emit: function(input) {\n\n this.pX = input.deltaX;\n this.pY = input.deltaY;\n\n var direction = directionStr(input.direction);\n\n if (direction) {\n input.additionalEvent = this.options.event + direction;\n }\n this._super.emit.call(this, input);\n }\n});\n\n/**\n * Pinch\n * Recognized when two or more pointers are moving toward (zoom-in) or away from each other (zoom-out).\n * @constructor\n * @extends AttrRecognizer\n */\nfunction PinchRecognizer() {\n AttrRecognizer.apply(this, arguments);\n}\n\ninherit(PinchRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof PinchRecognizer\n */\n defaults: {\n event: 'pinch',\n threshold: 0,\n pointers: 2\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_NONE];\n },\n\n attrTest: function(input) {\n return this._super.attrTest.call(this, input) &&\n (Math.abs(input.scale - 1) > this.options.threshold || this.state & STATE_BEGAN);\n },\n\n emit: function(input) {\n if (input.scale !== 1) {\n var inOut = input.scale < 1 ? 'in' : 'out';\n input.additionalEvent = this.options.event + inOut;\n }\n this._super.emit.call(this, input);\n }\n});\n\n/**\n * Press\n * Recognized when the pointer is down for x ms without any movement.\n * @constructor\n * @extends Recognizer\n */\nfunction PressRecognizer() {\n Recognizer.apply(this, arguments);\n\n this._timer = null;\n this._input = null;\n}\n\ninherit(PressRecognizer, Recognizer, {\n /**\n * @namespace\n * @memberof PressRecognizer\n */\n defaults: {\n event: 'press',\n pointers: 1,\n time: 251, // minimal time of the pointer to be pressed\n threshold: 9 // a minimal movement is ok, but keep it low\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_AUTO];\n },\n\n process: function(input) {\n var options = this.options;\n var validPointers = input.pointers.length === options.pointers;\n var validMovement = input.distance < options.threshold;\n var validTime = input.deltaTime > options.time;\n\n this._input = input;\n\n // we only allow little movement\n // and we've reached an end event, so a tap is possible\n if (!validMovement || !validPointers || (input.eventType & (INPUT_END | INPUT_CANCEL) && !validTime)) {\n this.reset();\n } else if (input.eventType & INPUT_START) {\n this.reset();\n this._timer = setTimeoutContext(function() {\n this.state = STATE_RECOGNIZED;\n this.tryEmit();\n }, options.time, this);\n } else if (input.eventType & INPUT_END) {\n return STATE_RECOGNIZED;\n }\n return STATE_FAILED;\n },\n\n reset: function() {\n clearTimeout(this._timer);\n },\n\n emit: function(input) {\n if (this.state !== STATE_RECOGNIZED) {\n return;\n }\n\n if (input && (input.eventType & INPUT_END)) {\n this.manager.emit(this.options.event + 'up', input);\n } else {\n this._input.timeStamp = now();\n this.manager.emit(this.options.event, this._input);\n }\n }\n});\n\n/**\n * Rotate\n * Recognized when two or more pointer are moving in a circular motion.\n * @constructor\n * @extends AttrRecognizer\n */\nfunction RotateRecognizer() {\n AttrRecognizer.apply(this, arguments);\n}\n\ninherit(RotateRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof RotateRecognizer\n */\n defaults: {\n event: 'rotate',\n threshold: 0,\n pointers: 2\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_NONE];\n },\n\n attrTest: function(input) {\n return this._super.attrTest.call(this, input) &&\n (Math.abs(input.rotation) > this.options.threshold || this.state & STATE_BEGAN);\n }\n});\n\n/**\n * Swipe\n * Recognized when the pointer is moving fast (velocity), with enough distance in the allowed direction.\n * @constructor\n * @extends AttrRecognizer\n */\nfunction SwipeRecognizer() {\n AttrRecognizer.apply(this, arguments);\n}\n\ninherit(SwipeRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof SwipeRecognizer\n */\n defaults: {\n event: 'swipe',\n threshold: 10,\n velocity: 0.3,\n direction: DIRECTION_HORIZONTAL | DIRECTION_VERTICAL,\n pointers: 1\n },\n\n getTouchAction: function() {\n return PanRecognizer.prototype.getTouchAction.call(this);\n },\n\n attrTest: function(input) {\n var direction = this.options.direction;\n var velocity;\n\n if (direction & (DIRECTION_HORIZONTAL | DIRECTION_VERTICAL)) {\n velocity = input.overallVelocity;\n } else if (direction & DIRECTION_HORIZONTAL) {\n velocity = input.overallVelocityX;\n } else if (direction & DIRECTION_VERTICAL) {\n velocity = input.overallVelocityY;\n }\n\n return this._super.attrTest.call(this, input) &&\n direction & input.offsetDirection &&\n input.distance > this.options.threshold &&\n input.maxPointers == this.options.pointers &&\n abs(velocity) > this.options.velocity && input.eventType & INPUT_END;\n },\n\n emit: function(input) {\n var direction = directionStr(input.offsetDirection);\n if (direction) {\n this.manager.emit(this.options.event + direction, input);\n }\n\n this.manager.emit(this.options.event, input);\n }\n});\n\n/**\n * A tap is ecognized when the pointer is doing a small tap/click. Multiple taps are recognized if they occur\n * between the given interval and position. The delay option can be used to recognize multi-taps without firing\n * a single tap.\n *\n * The eventData from the emitted event contains the property `tapCount`, which contains the amount of\n * multi-taps being recognized.\n * @constructor\n * @extends Recognizer\n */\nfunction TapRecognizer() {\n Recognizer.apply(this, arguments);\n\n // previous time and center,\n // used for tap counting\n this.pTime = false;\n this.pCenter = false;\n\n this._timer = null;\n this._input = null;\n this.count = 0;\n}\n\ninherit(TapRecognizer, Recognizer, {\n /**\n * @namespace\n * @memberof PinchRecognizer\n */\n defaults: {\n event: 'tap',\n pointers: 1,\n taps: 1,\n interval: 300, // max time between the multi-tap taps\n time: 250, // max time of the pointer to be down (like finger on the screen)\n threshold: 9, // a minimal movement is ok, but keep it low\n posThreshold: 10 // a multi-tap can be a bit off the initial position\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_MANIPULATION];\n },\n\n process: function(input) {\n var options = this.options;\n\n var validPointers = input.pointers.length === options.pointers;\n var validMovement = input.distance < options.threshold;\n var validTouchTime = input.deltaTime < options.time;\n\n this.reset();\n\n if ((input.eventType & INPUT_START) && (this.count === 0)) {\n return this.failTimeout();\n }\n\n // we only allow little movement\n // and we've reached an end event, so a tap is possible\n if (validMovement && validTouchTime && validPointers) {\n if (input.eventType != INPUT_END) {\n return this.failTimeout();\n }\n\n var validInterval = this.pTime ? (input.timeStamp - this.pTime < options.interval) : true;\n var validMultiTap = !this.pCenter || getDistance(this.pCenter, input.center) < options.posThreshold;\n\n this.pTime = input.timeStamp;\n this.pCenter = input.center;\n\n if (!validMultiTap || !validInterval) {\n this.count = 1;\n } else {\n this.count += 1;\n }\n\n this._input = input;\n\n // if tap count matches we have recognized it,\n // else it has began recognizing...\n var tapCount = this.count % options.taps;\n if (tapCount === 0) {\n // no failing requirements, immediately trigger the tap event\n // or wait as long as the multitap interval to trigger\n if (!this.hasRequireFailures()) {\n return STATE_RECOGNIZED;\n } else {\n this._timer = setTimeoutContext(function() {\n this.state = STATE_RECOGNIZED;\n this.tryEmit();\n }, options.interval, this);\n return STATE_BEGAN;\n }\n }\n }\n return STATE_FAILED;\n },\n\n failTimeout: function() {\n this._timer = setTimeoutContext(function() {\n this.state = STATE_FAILED;\n }, this.options.interval, this);\n return STATE_FAILED;\n },\n\n reset: function() {\n clearTimeout(this._timer);\n },\n\n emit: function() {\n if (this.state == STATE_RECOGNIZED) {\n this._input.tapCount = this.count;\n this.manager.emit(this.options.event, this._input);\n }\n }\n});\n\n/**\n * Simple way to create a manager with a default set of recognizers.\n * @param {HTMLElement} element\n * @param {Object} [options]\n * @constructor\n */\nfunction Hammer(element, options) {\n options = options || {};\n options.recognizers = ifUndefined(options.recognizers, Hammer.defaults.preset);\n return new Manager(element, options);\n}\n\n/**\n * @const {string}\n */\nHammer.VERSION = '2.0.7';\n\n/**\n * default settings\n * @namespace\n */\nHammer.defaults = {\n /**\n * set if DOM events are being triggered.\n * But this is slower and unused by simple implementations, so disabled by default.\n * @type {Boolean}\n * @default false\n */\n domEvents: false,\n\n /**\n * The value for the touchAction property/fallback.\n * When set to `compute` it will magically set the correct value based on the added recognizers.\n * @type {String}\n * @default compute\n */\n touchAction: TOUCH_ACTION_COMPUTE,\n\n /**\n * @type {Boolean}\n * @default true\n */\n enable: true,\n\n /**\n * EXPERIMENTAL FEATURE -- can be removed/changed\n * Change the parent input target element.\n * If Null, then it is being set the to main element.\n * @type {Null|EventTarget}\n * @default null\n */\n inputTarget: null,\n\n /**\n * force an input class\n * @type {Null|Function}\n * @default null\n */\n inputClass: null,\n\n /**\n * Default recognizer setup when calling `Hammer()`\n * When creating a new Manager these will be skipped.\n * @type {Array}\n */\n preset: [\n // RecognizerClass, options, [recognizeWith, ...], [requireFailure, ...]\n [RotateRecognizer, {enable: false}],\n [PinchRecognizer, {enable: false}, ['rotate']],\n [SwipeRecognizer, {direction: DIRECTION_HORIZONTAL}],\n [PanRecognizer, {direction: DIRECTION_HORIZONTAL}, ['swipe']],\n [TapRecognizer],\n [TapRecognizer, {event: 'doubletap', taps: 2}, ['tap']],\n [PressRecognizer]\n ],\n\n /**\n * Some CSS properties can be used to improve the working of Hammer.\n * Add them to this method and they will be set when creating a new Manager.\n * @namespace\n */\n cssProps: {\n /**\n * Disables text selection to improve the dragging gesture. Mainly for desktop browsers.\n * @type {String}\n * @default 'none'\n */\n userSelect: 'none',\n\n /**\n * Disable the Windows Phone grippers when pressing an element.\n * @type {String}\n * @default 'none'\n */\n touchSelect: 'none',\n\n /**\n * Disables the default callout shown when you touch and hold a touch target.\n * On iOS, when you touch and hold a touch target such as a link, Safari displays\n * a callout containing information about the link. This property allows you to disable that callout.\n * @type {String}\n * @default 'none'\n */\n touchCallout: 'none',\n\n /**\n * Specifies whether zooming is enabled. Used by IE10>\n * @type {String}\n * @default 'none'\n */\n contentZooming: 'none',\n\n /**\n * Specifies that an entire element should be draggable instead of its contents. Mainly for desktop browsers.\n * @type {String}\n * @default 'none'\n */\n userDrag: 'none',\n\n /**\n * Overrides the highlight color shown when the user taps a link or a JavaScript\n * clickable element in iOS. This property obeys the alpha value, if specified.\n * @type {String}\n * @default 'rgba(0,0,0,0)'\n */\n tapHighlightColor: 'rgba(0,0,0,0)'\n }\n};\n\nvar STOP = 1;\nvar FORCED_STOP = 2;\n\n/**\n * Manager\n * @param {HTMLElement} element\n * @param {Object} [options]\n * @constructor\n */\nfunction Manager(element, options) {\n this.options = assign({}, Hammer.defaults, options || {});\n\n this.options.inputTarget = this.options.inputTarget || element;\n\n this.handlers = {};\n this.session = {};\n this.recognizers = [];\n this.oldCssProps = {};\n\n this.element = element;\n this.input = createInputInstance(this);\n this.touchAction = new TouchAction(this, this.options.touchAction);\n\n toggleCssProps(this, true);\n\n each(this.options.recognizers, function(item) {\n var recognizer = this.add(new (item[0])(item[1]));\n item[2] && recognizer.recognizeWith(item[2]);\n item[3] && recognizer.requireFailure(item[3]);\n }, this);\n}\n\nManager.prototype = {\n /**\n * set options\n * @param {Object} options\n * @returns {Manager}\n */\n set: function(options) {\n assign(this.options, options);\n\n // Options that need a little more setup\n if (options.touchAction) {\n this.touchAction.update();\n }\n if (options.inputTarget) {\n // Clean up existing event listeners and reinitialize\n this.input.destroy();\n this.input.target = options.inputTarget;\n this.input.init();\n }\n return this;\n },\n\n /**\n * stop recognizing for this session.\n * This session will be discarded, when a new [input]start event is fired.\n * When forced, the recognizer cycle is stopped immediately.\n * @param {Boolean} [force]\n */\n stop: function(force) {\n this.session.stopped = force ? FORCED_STOP : STOP;\n },\n\n /**\n * run the recognizers!\n * called by the inputHandler function on every movement of the pointers (touches)\n * it walks through all the recognizers and tries to detect the gesture that is being made\n * @param {Object} inputData\n */\n recognize: function(inputData) {\n var session = this.session;\n if (session.stopped) {\n return;\n }\n\n // run the touch-action polyfill\n this.touchAction.preventDefaults(inputData);\n\n var recognizer;\n var recognizers = this.recognizers;\n\n // this holds the recognizer that is being recognized.\n // so the recognizer's state needs to be BEGAN, CHANGED, ENDED or RECOGNIZED\n // if no recognizer is detecting a thing, it is set to `null`\n var curRecognizer = session.curRecognizer;\n\n // reset when the last recognizer is recognized\n // or when we're in a new session\n if (!curRecognizer || (curRecognizer && curRecognizer.state & STATE_RECOGNIZED)) {\n curRecognizer = session.curRecognizer = null;\n }\n\n var i = 0;\n while (i < recognizers.length) {\n recognizer = recognizers[i];\n\n // find out if we are allowed try to recognize the input for this one.\n // 1. allow if the session is NOT forced stopped (see the .stop() method)\n // 2. allow if we still haven't recognized a gesture in this session, or the this recognizer is the one\n // that is being recognized.\n // 3. allow if the recognizer is allowed to run simultaneous with the current recognized recognizer.\n // this can be setup with the `recognizeWith()` method on the recognizer.\n if (session.stopped !== FORCED_STOP && ( // 1\n !curRecognizer || recognizer == curRecognizer || // 2\n recognizer.canRecognizeWith(curRecognizer))) { // 3\n recognizer.recognize(inputData);\n } else {\n recognizer.reset();\n }\n\n // if the recognizer has been recognizing the input as a valid gesture, we want to store this one as the\n // current active recognizer. but only if we don't already have an active recognizer\n if (!curRecognizer && recognizer.state & (STATE_BEGAN | STATE_CHANGED | STATE_ENDED)) {\n curRecognizer = session.curRecognizer = recognizer;\n }\n i++;\n }\n },\n\n /**\n * get a recognizer by its event name.\n * @param {Recognizer|String} recognizer\n * @returns {Recognizer|Null}\n */\n get: function(recognizer) {\n if (recognizer instanceof Recognizer) {\n return recognizer;\n }\n\n var recognizers = this.recognizers;\n for (var i = 0; i < recognizers.length; i++) {\n if (recognizers[i].options.event == recognizer) {\n return recognizers[i];\n }\n }\n return null;\n },\n\n /**\n * add a recognizer to the manager\n * existing recognizers with the same event name will be removed\n * @param {Recognizer} recognizer\n * @returns {Recognizer|Manager}\n */\n add: function(recognizer) {\n if (invokeArrayArg(recognizer, 'add', this)) {\n return this;\n }\n\n // remove existing\n var existing = this.get(recognizer.options.event);\n if (existing) {\n this.remove(existing);\n }\n\n this.recognizers.push(recognizer);\n recognizer.manager = this;\n\n this.touchAction.update();\n return recognizer;\n },\n\n /**\n * remove a recognizer by name or instance\n * @param {Recognizer|String} recognizer\n * @returns {Manager}\n */\n remove: function(recognizer) {\n if (invokeArrayArg(recognizer, 'remove', this)) {\n return this;\n }\n\n recognizer = this.get(recognizer);\n\n // let's make sure this recognizer exists\n if (recognizer) {\n var recognizers = this.recognizers;\n var index = inArray(recognizers, recognizer);\n\n if (index !== -1) {\n recognizers.splice(index, 1);\n this.touchAction.update();\n }\n }\n\n return this;\n },\n\n /**\n * bind event\n * @param {String} events\n * @param {Function} handler\n * @returns {EventEmitter} this\n */\n on: function(events, handler) {\n if (events === undefined) {\n return;\n }\n if (handler === undefined) {\n return;\n }\n\n var handlers = this.handlers;\n each(splitStr(events), function(event) {\n handlers[event] = handlers[event] || [];\n handlers[event].push(handler);\n });\n return this;\n },\n\n /**\n * unbind event, leave emit blank to remove all handlers\n * @param {String} events\n * @param {Function} [handler]\n * @returns {EventEmitter} this\n */\n off: function(events, handler) {\n if (events === undefined) {\n return;\n }\n\n var handlers = this.handlers;\n each(splitStr(events), function(event) {\n if (!handler) {\n delete handlers[event];\n } else {\n handlers[event] && handlers[event].splice(inArray(handlers[event], handler), 1);\n }\n });\n return this;\n },\n\n /**\n * emit event to the listeners\n * @param {String} event\n * @param {Object} data\n */\n emit: function(event, data) {\n // we also want to trigger dom events\n if (this.options.domEvents) {\n triggerDomEvent(event, data);\n }\n\n // no handlers, so skip it all\n var handlers = this.handlers[event] && this.handlers[event].slice();\n if (!handlers || !handlers.length) {\n return;\n }\n\n data.type = event;\n data.preventDefault = function() {\n data.srcEvent.preventDefault();\n };\n\n var i = 0;\n while (i < handlers.length) {\n handlers[i](data);\n i++;\n }\n },\n\n /**\n * destroy the manager and unbinds all events\n * it doesn't unbind dom events, that is the user own responsibility\n */\n destroy: function() {\n this.element && toggleCssProps(this, false);\n\n this.handlers = {};\n this.session = {};\n this.input.destroy();\n this.element = null;\n }\n};\n\n/**\n * add/remove the css properties as defined in manager.options.cssProps\n * @param {Manager} manager\n * @param {Boolean} add\n */\nfunction toggleCssProps(manager, add) {\n var element = manager.element;\n if (!element.style) {\n return;\n }\n var prop;\n each(manager.options.cssProps, function(value, name) {\n prop = prefixed(element.style, name);\n if (add) {\n manager.oldCssProps[prop] = element.style[prop];\n element.style[prop] = value;\n } else {\n element.style[prop] = manager.oldCssProps[prop] || '';\n }\n });\n if (!add) {\n manager.oldCssProps = {};\n }\n}\n\n/**\n * trigger dom event\n * @param {String} event\n * @param {Object} data\n */\nfunction triggerDomEvent(event, data) {\n var gestureEvent = document.createEvent('Event');\n gestureEvent.initEvent(event, true, true);\n gestureEvent.gesture = data;\n data.target.dispatchEvent(gestureEvent);\n}\n\nassign(Hammer, {\n INPUT_START: INPUT_START,\n INPUT_MOVE: INPUT_MOVE,\n INPUT_END: INPUT_END,\n INPUT_CANCEL: INPUT_CANCEL,\n\n STATE_POSSIBLE: STATE_POSSIBLE,\n STATE_BEGAN: STATE_BEGAN,\n STATE_CHANGED: STATE_CHANGED,\n STATE_ENDED: STATE_ENDED,\n STATE_RECOGNIZED: STATE_RECOGNIZED,\n STATE_CANCELLED: STATE_CANCELLED,\n STATE_FAILED: STATE_FAILED,\n\n DIRECTION_NONE: DIRECTION_NONE,\n DIRECTION_LEFT: DIRECTION_LEFT,\n DIRECTION_RIGHT: DIRECTION_RIGHT,\n DIRECTION_UP: DIRECTION_UP,\n DIRECTION_DOWN: DIRECTION_DOWN,\n DIRECTION_HORIZONTAL: DIRECTION_HORIZONTAL,\n DIRECTION_VERTICAL: DIRECTION_VERTICAL,\n DIRECTION_ALL: DIRECTION_ALL,\n\n Manager: Manager,\n Input: Input,\n TouchAction: TouchAction,\n\n TouchInput: TouchInput,\n MouseInput: MouseInput,\n PointerEventInput: PointerEventInput,\n TouchMouseInput: TouchMouseInput,\n SingleTouchInput: SingleTouchInput,\n\n Recognizer: Recognizer,\n AttrRecognizer: AttrRecognizer,\n Tap: TapRecognizer,\n Pan: PanRecognizer,\n Swipe: SwipeRecognizer,\n Pinch: PinchRecognizer,\n Rotate: RotateRecognizer,\n Press: PressRecognizer,\n\n on: addEventListeners,\n off: removeEventListeners,\n each: each,\n merge: merge,\n extend: extend,\n assign: assign,\n inherit: inherit,\n bindFn: bindFn,\n prefixed: prefixed\n});\n\n// this prevents errors when Hammer is loaded in the presence of an AMD\n// style loader but by script tag, not by the loader.\nvar freeGlobal = (typeof window !== 'undefined' ? window : (typeof self !== 'undefined' ? self : {})); // jshint ignore:line\nfreeGlobal.Hammer = Hammer;\n\nif (typeof define === 'function' && define.amd) {\n define(function() {\n return Hammer;\n });\n} else if (typeof module != 'undefined' && module.exports) {\n module.exports = Hammer;\n} else {\n window[exportName] = Hammer;\n}\n\n})(window, document, 'Hammer');\n","'use strict';\n\nvar $defineProperty = require('es-define-property');\n\nvar hasPropertyDescriptors = function hasPropertyDescriptors() {\n\treturn !!$defineProperty;\n};\n\nhasPropertyDescriptors.hasArrayLengthDefineBug = function hasArrayLengthDefineBug() {\n\t// node v0.6 has a bug where array lengths can be Set but not Defined\n\tif (!$defineProperty) {\n\t\treturn null;\n\t}\n\ttry {\n\t\treturn $defineProperty([], 'length', { value: 1 }).length !== 1;\n\t} catch (e) {\n\t\t// In Firefox 4-22, defining length on an array throws an exception.\n\t\treturn true;\n\t}\n};\n\nmodule.exports = hasPropertyDescriptors;\n","'use strict';\n\nvar test = {\n\tfoo: {}\n};\n\nvar $Object = Object;\n\nmodule.exports = function hasProto() {\n\treturn { __proto__: test }.foo === test.foo && !({ __proto__: null } instanceof $Object);\n};\n","'use strict';\n\nvar origSymbol = typeof Symbol !== 'undefined' && Symbol;\nvar hasSymbolSham = require('./shams');\n\nmodule.exports = function hasNativeSymbols() {\n\tif (typeof origSymbol !== 'function') { return false; }\n\tif (typeof Symbol !== 'function') { return false; }\n\tif (typeof origSymbol('foo') !== 'symbol') { return false; }\n\tif (typeof Symbol('bar') !== 'symbol') { return false; }\n\n\treturn hasSymbolSham();\n};\n","'use strict';\n\n/* eslint complexity: [2, 18], max-statements: [2, 33] */\nmodule.exports = function hasSymbols() {\n\tif (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }\n\tif (typeof Symbol.iterator === 'symbol') { return true; }\n\n\tvar obj = {};\n\tvar sym = Symbol('test');\n\tvar symObj = Object(sym);\n\tif (typeof sym === 'string') { return false; }\n\n\tif (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }\n\tif (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }\n\n\t// temp disabled per https://github.com/ljharb/object.assign/issues/17\n\t// if (sym instanceof Symbol) { return false; }\n\t// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4\n\t// if (!(symObj instanceof Symbol)) { return false; }\n\n\t// if (typeof Symbol.prototype.toString !== 'function') { return false; }\n\t// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }\n\n\tvar symVal = 42;\n\tobj[sym] = symVal;\n\tfor (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop\n\tif (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }\n\n\tif (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }\n\n\tvar syms = Object.getOwnPropertySymbols(obj);\n\tif (syms.length !== 1 || syms[0] !== sym) { return false; }\n\n\tif (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }\n\n\tif (typeof Object.getOwnPropertyDescriptor === 'function') {\n\t\tvar descriptor = Object.getOwnPropertyDescriptor(obj, sym);\n\t\tif (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }\n\t}\n\n\treturn true;\n};\n","'use strict';\n\nvar call = Function.prototype.call;\nvar $hasOwn = Object.prototype.hasOwnProperty;\nvar bind = require('function-bind');\n\n/** @type {import('.')} */\nmodule.exports = bind.call(call, $hasOwn);\n","'use strict';\nvar toString = Object.prototype.toString;\n\nmodule.exports = function (x) {\n\tvar prototype;\n\treturn toString.call(x) === '[object Object]' && (prototype = Object.getPrototypeOf(x), prototype === null || prototype === Object.getPrototypeOf({}));\n};\n","\n/**\n * Expose `isUrl`.\n */\n\nmodule.exports = isUrl;\n\n/**\n * RegExps.\n * A URL must match #1 and then at least one of #2/#3.\n * Use two levels of REs to avoid REDOS.\n */\n\nvar protocolAndDomainRE = /^(?:\\w+:)?\\/\\/(\\S+)$/;\n\nvar localhostDomainRE = /^localhost[\\:?\\d]*(?:[^\\:?\\d]\\S*)?$/\nvar nonLocalhostDomainRE = /^[^\\s\\.]+\\.\\S{2,}$/;\n\n/**\n * Loosely validate a URL `string`.\n *\n * @param {String} string\n * @return {Boolean}\n */\n\nfunction isUrl(string){\n if (typeof string !== 'string') {\n return false;\n }\n\n var match = string.match(protocolAndDomainRE);\n if (!match) {\n return false;\n }\n\n var everythingAfterProtocol = match[1];\n if (!everythingAfterProtocol) {\n return false;\n }\n\n if (localhostDomainRE.test(everythingAfterProtocol) ||\n nonLocalhostDomainRE.test(everythingAfterProtocol)) {\n return true;\n }\n\n return false;\n}\n","/* This program is free software. It comes without any warranty, to\n * the extent permitted by applicable law. You can redistribute it\n * and/or modify it under the terms of the Do What The Fuck You Want\n * To Public License, Version 2, as published by Sam Hocevar. See\n * http://www.wtfpl.net/ for more details. */\n'use strict';\nmodule.exports = leftPad;\n\nvar cache = [\n '',\n ' ',\n ' ',\n ' ',\n ' ',\n ' ',\n ' ',\n ' ',\n ' ',\n ' '\n];\n\nfunction leftPad (str, len, ch) {\n // convert `str` to a `string`\n str = str + '';\n // `len` is the `pad`'s length now\n len = len - str.length;\n // doesn't need to pad\n if (len <= 0) return str;\n // `ch` defaults to `' '`\n if (!ch && ch !== 0) ch = ' ';\n // convert `ch` to a `string` cuz it could be a number\n ch = ch + '';\n // cache common use cases\n if (ch === ' ' && len < 10) return cache[len] + str;\n // `pad` starts with an empty string\n var pad = '';\n // loop\n while (true) {\n // add `ch` to `pad` if `len` is odd\n if (len & 1) pad += ch;\n // divide `len` by 2, ditch the remainder\n len >>= 1;\n // \"double\" the `ch` so this operation count grows logarithmically on `len`\n // each time `ch` is \"doubled\", the `len` would need to be \"doubled\" too\n // similar to finding a value in binary search tree, hence O(log(n))\n if (len) ch += ch;\n // `len` is 0, exit the loop\n else break;\n }\n // pad `str`!\n return pad + str;\n}\n","'use strict';\nvar url = require('url');\nvar punycode = require('punycode');\nvar queryString = require('query-string');\nvar prependHttp = require('prepend-http');\nvar sortKeys = require('sort-keys');\nvar objectAssign = require('object-assign');\n\nvar DEFAULT_PORTS = {\n\t'http:': 80,\n\t'https:': 443,\n\t'ftp:': 21\n};\n\n// protocols that always contain a `//`` bit\nvar slashedProtocol = {\n\t'http': true,\n\t'https': true,\n\t'ftp': true,\n\t'gopher': true,\n\t'file': true,\n\t'http:': true,\n\t'https:': true,\n\t'ftp:': true,\n\t'gopher:': true,\n\t'file:': true\n};\n\nfunction testParameter(name, filters) {\n\treturn filters.some(function (filter) {\n\t\treturn filter instanceof RegExp ? filter.test(name) : filter === name;\n\t});\n}\n\nmodule.exports = function (str, opts) {\n\topts = objectAssign({\n\t\tnormalizeProtocol: true,\n\t\tnormalizeHttps: false,\n\t\tstripFragment: true,\n\t\tstripWWW: true,\n\t\tremoveQueryParameters: [/^utm_\\w+/i],\n\t\tremoveTrailingSlash: true,\n\t\tremoveDirectoryIndex: false\n\t}, opts);\n\n\tif (typeof str !== 'string') {\n\t\tthrow new TypeError('Expected a string');\n\t}\n\n\tvar hasRelativeProtocol = str.indexOf('//') === 0;\n\n\t// prepend protocol\n\tstr = prependHttp(str.trim()).replace(/^\\/\\//, 'http://');\n\n\tvar urlObj = url.parse(str);\n\n\tif (opts.normalizeHttps && urlObj.protocol === 'https:') {\n\t\turlObj.protocol = 'http:';\n\t}\n\n\tif (!urlObj.hostname && !urlObj.pathname) {\n\t\tthrow new Error('Invalid URL');\n\t}\n\n\t// prevent these from being used by `url.format`\n\tdelete urlObj.host;\n\tdelete urlObj.query;\n\n\t// remove fragment\n\tif (opts.stripFragment) {\n\t\tdelete urlObj.hash;\n\t}\n\n\t// remove default port\n\tvar port = DEFAULT_PORTS[urlObj.protocol];\n\tif (Number(urlObj.port) === port) {\n\t\tdelete urlObj.port;\n\t}\n\n\t// remove duplicate slashes\n\tif (urlObj.pathname) {\n\t\turlObj.pathname = urlObj.pathname.replace(/\\/{2,}/g, '/');\n\t}\n\n\t// decode URI octets\n\tif (urlObj.pathname) {\n\t\turlObj.pathname = decodeURI(urlObj.pathname);\n\t}\n\n\t// remove directory index\n\tif (opts.removeDirectoryIndex === true) {\n\t\topts.removeDirectoryIndex = [/^index\\.[a-z]+$/];\n\t}\n\n\tif (Array.isArray(opts.removeDirectoryIndex) && opts.removeDirectoryIndex.length) {\n\t\tvar pathComponents = urlObj.pathname.split('/');\n\t\tvar lastComponent = pathComponents[pathComponents.length - 1];\n\n\t\tif (testParameter(lastComponent, opts.removeDirectoryIndex)) {\n\t\t\tpathComponents = pathComponents.slice(0, pathComponents.length - 1);\n\t\t\turlObj.pathname = pathComponents.slice(1).join('/') + '/';\n\t\t}\n\t}\n\n\t// resolve relative paths, but only for slashed protocols\n\tif (slashedProtocol[urlObj.protocol]) {\n\t\tvar domain = urlObj.protocol + '//' + urlObj.hostname;\n\t\tvar relative = url.resolve(domain, urlObj.pathname);\n\t\turlObj.pathname = relative.replace(domain, '');\n\t}\n\n\tif (urlObj.hostname) {\n\t\t// IDN to Unicode\n\t\turlObj.hostname = punycode.toUnicode(urlObj.hostname).toLowerCase();\n\n\t\t// remove trailing dot\n\t\turlObj.hostname = urlObj.hostname.replace(/\\.$/, '');\n\n\t\t// remove `www.`\n\t\tif (opts.stripWWW) {\n\t\t\turlObj.hostname = urlObj.hostname.replace(/^www\\./, '');\n\t\t}\n\t}\n\n\t// remove URL with empty query string\n\tif (urlObj.search === '?') {\n\t\tdelete urlObj.search;\n\t}\n\n\tvar queryParameters = queryString.parse(urlObj.search);\n\n\t// remove query unwanted parameters\n\tif (Array.isArray(opts.removeQueryParameters)) {\n\t\tfor (var key in queryParameters) {\n\t\t\tif (testParameter(key, opts.removeQueryParameters)) {\n\t\t\t\tdelete queryParameters[key];\n\t\t\t}\n\t\t}\n\t}\n\n\t// sort query parameters\n\turlObj.search = queryString.stringify(sortKeys(queryParameters));\n\n\t// decode query parameters\n\turlObj.search = decodeURIComponent(urlObj.search);\n\n\t// take advantage of many of the Node `url` normalizations\n\tstr = url.format(urlObj);\n\n\t// remove ending `/`\n\tif (opts.removeTrailingSlash || urlObj.pathname === '/') {\n\t\tstr = str.replace(/\\/$/, '');\n\t}\n\n\t// restore relative protocol, if applicable\n\tif (hasRelativeProtocol && !opts.normalizeProtocol) {\n\t\tstr = str.replace(/^http:\\/\\//, '//');\n\t}\n\n\treturn str;\n};\n","'use strict';\nvar strictUriEncode = require('strict-uri-encode');\nvar objectAssign = require('object-assign');\n\nfunction encoderForArrayFormat(opts) {\n\tswitch (opts.arrayFormat) {\n\t\tcase 'index':\n\t\t\treturn function (key, value, index) {\n\t\t\t\treturn value === null ? [\n\t\t\t\t\tencode(key, opts),\n\t\t\t\t\t'[',\n\t\t\t\t\tindex,\n\t\t\t\t\t']'\n\t\t\t\t].join('') : [\n\t\t\t\t\tencode(key, opts),\n\t\t\t\t\t'[',\n\t\t\t\t\tencode(index, opts),\n\t\t\t\t\t']=',\n\t\t\t\t\tencode(value, opts)\n\t\t\t\t].join('');\n\t\t\t};\n\n\t\tcase 'bracket':\n\t\t\treturn function (key, value) {\n\t\t\t\treturn value === null ? encode(key, opts) : [\n\t\t\t\t\tencode(key, opts),\n\t\t\t\t\t'[]=',\n\t\t\t\t\tencode(value, opts)\n\t\t\t\t].join('');\n\t\t\t};\n\n\t\tdefault:\n\t\t\treturn function (key, value) {\n\t\t\t\treturn value === null ? encode(key, opts) : [\n\t\t\t\t\tencode(key, opts),\n\t\t\t\t\t'=',\n\t\t\t\t\tencode(value, opts)\n\t\t\t\t].join('');\n\t\t\t};\n\t}\n}\n\nfunction parserForArrayFormat(opts) {\n\tvar result;\n\n\tswitch (opts.arrayFormat) {\n\t\tcase 'index':\n\t\t\treturn function (key, value, accumulator) {\n\t\t\t\tresult = /\\[(\\d*)\\]$/.exec(key);\n\n\t\t\t\tkey = key.replace(/\\[\\d*\\]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = {};\n\t\t\t\t}\n\n\t\t\t\taccumulator[key][result[1]] = value;\n\t\t\t};\n\n\t\tcase 'bracket':\n\t\t\treturn function (key, value, accumulator) {\n\t\t\t\tresult = /(\\[\\])$/.exec(key);\n\t\t\t\tkey = key.replace(/\\[\\]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t} else if (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [].concat(accumulator[key], value);\n\t\t\t};\n\n\t\tdefault:\n\t\t\treturn function (key, value, accumulator) {\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [].concat(accumulator[key], value);\n\t\t\t};\n\t}\n}\n\nfunction encode(value, opts) {\n\tif (opts.encode) {\n\t\treturn opts.strict ? strictUriEncode(value) : encodeURIComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction keysSorter(input) {\n\tif (Array.isArray(input)) {\n\t\treturn input.sort();\n\t} else if (typeof input === 'object') {\n\t\treturn keysSorter(Object.keys(input)).sort(function (a, b) {\n\t\t\treturn Number(a) - Number(b);\n\t\t}).map(function (key) {\n\t\t\treturn input[key];\n\t\t});\n\t}\n\n\treturn input;\n}\n\nexports.extract = function (str) {\n\treturn str.split('?')[1] || '';\n};\n\nexports.parse = function (str, opts) {\n\topts = objectAssign({arrayFormat: 'none'}, opts);\n\n\tvar formatter = parserForArrayFormat(opts);\n\n\t// Create an object with no prototype\n\t// https://github.com/sindresorhus/query-string/issues/47\n\tvar ret = Object.create(null);\n\n\tif (typeof str !== 'string') {\n\t\treturn ret;\n\t}\n\n\tstr = str.trim().replace(/^(\\?|#|&)/, '');\n\n\tif (!str) {\n\t\treturn ret;\n\t}\n\n\tstr.split('&').forEach(function (param) {\n\t\tvar parts = param.replace(/\\+/g, ' ').split('=');\n\t\t// Firefox (pre 40) decodes `%3D` to `=`\n\t\t// https://github.com/sindresorhus/query-string/pull/37\n\t\tvar key = parts.shift();\n\t\tvar val = parts.length > 0 ? parts.join('=') : undefined;\n\n\t\t// missing `=` should be `null`:\n\t\t// http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n\t\tval = val === undefined ? null : decodeURIComponent(val);\n\n\t\tformatter(decodeURIComponent(key), val, ret);\n\t});\n\n\treturn Object.keys(ret).sort().reduce(function (result, key) {\n\t\tvar val = ret[key];\n\t\tif (Boolean(val) && typeof val === 'object' && !Array.isArray(val)) {\n\t\t\t// Sort object keys, not values\n\t\t\tresult[key] = keysSorter(val);\n\t\t} else {\n\t\t\tresult[key] = val;\n\t\t}\n\n\t\treturn result;\n\t}, Object.create(null));\n};\n\nexports.stringify = function (obj, opts) {\n\tvar defaults = {\n\t\tencode: true,\n\t\tstrict: true,\n\t\tarrayFormat: 'none'\n\t};\n\n\topts = objectAssign(defaults, opts);\n\n\tvar formatter = encoderForArrayFormat(opts);\n\n\treturn obj ? Object.keys(obj).sort().map(function (key) {\n\t\tvar val = obj[key];\n\n\t\tif (val === undefined) {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (val === null) {\n\t\t\treturn encode(key, opts);\n\t\t}\n\n\t\tif (Array.isArray(val)) {\n\t\t\tvar result = [];\n\n\t\t\tval.slice().forEach(function (val2) {\n\t\t\t\tif (val2 === undefined) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tresult.push(formatter(key, val2, result.length));\n\t\t\t});\n\n\t\t\treturn result.join('&');\n\t\t}\n\n\t\treturn encode(key, opts) + '=' + encode(val, opts);\n\t}).filter(function (x) {\n\t\treturn x.length > 0;\n\t}).join('&') : '';\n};\n","module.exports = function (element) {\n \n var computed = window.getComputedStyle(element);\n var left = computed.marginLeft.replace('px', '');\n var right = computed.marginRight.replace('px', '');\n \n return +element.offsetWidth + +left + +right;\n};","\n /*! \n * portal-vue © Thorsten Lünborg, 2019 \n * \n * Version: 2.1.7\n * \n * LICENCE: MIT \n * \n * https://github.com/linusborg/portal-vue\n * \n */\n\n'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar Vue = _interopDefault(require('vue'));\n\nfunction _typeof(obj) {\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\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n}\n\nfunction _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}\n\nvar inBrowser = typeof window !== 'undefined';\nfunction freeze(item) {\n if (Array.isArray(item) || _typeof(item) === 'object') {\n return Object.freeze(item);\n }\n\n return item;\n}\nfunction combinePassengers(transports) {\n var slotProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return transports.reduce(function (passengers, transport) {\n var temp = transport.passengers[0];\n var newPassengers = typeof temp === 'function' ? temp(slotProps) : transport.passengers;\n return passengers.concat(newPassengers);\n }, []);\n}\nfunction stableSort(array, compareFn) {\n return array.map(function (v, idx) {\n return [idx, v];\n }).sort(function (a, b) {\n return compareFn(a[1], b[1]) || a[0] - b[0];\n }).map(function (c) {\n return c[1];\n });\n}\nfunction pick(obj, keys) {\n return keys.reduce(function (acc, key) {\n if (obj.hasOwnProperty(key)) {\n acc[key] = obj[key];\n }\n\n return acc;\n }, {});\n}\n\nvar transports = {};\nvar targets = {};\nvar sources = {};\nvar Wormhole = Vue.extend({\n data: function data() {\n return {\n transports: transports,\n targets: targets,\n sources: sources,\n trackInstances: inBrowser\n };\n },\n methods: {\n open: function open(transport) {\n if (!inBrowser) return;\n var to = transport.to,\n from = transport.from,\n passengers = transport.passengers,\n _transport$order = transport.order,\n order = _transport$order === void 0 ? Infinity : _transport$order;\n if (!to || !from || !passengers) return;\n var newTransport = {\n to: to,\n from: from,\n passengers: freeze(passengers),\n order: order\n };\n var keys = Object.keys(this.transports);\n\n if (keys.indexOf(to) === -1) {\n Vue.set(this.transports, to, []);\n }\n\n var currentIndex = this.$_getTransportIndex(newTransport); // Copying the array here so that the PortalTarget change event will actually contain two distinct arrays\n\n var newTransports = this.transports[to].slice(0);\n\n if (currentIndex === -1) {\n newTransports.push(newTransport);\n } else {\n newTransports[currentIndex] = newTransport;\n }\n\n this.transports[to] = stableSort(newTransports, function (a, b) {\n return a.order - b.order;\n });\n },\n close: function close(transport) {\n var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var to = transport.to,\n from = transport.from;\n if (!to || !from && force === false) return;\n\n if (!this.transports[to]) {\n return;\n }\n\n if (force) {\n this.transports[to] = [];\n } else {\n var index = this.$_getTransportIndex(transport);\n\n if (index >= 0) {\n // Copying the array here so that the PortalTarget change event will actually contain two distinct arrays\n var newTransports = this.transports[to].slice(0);\n newTransports.splice(index, 1);\n this.transports[to] = newTransports;\n }\n }\n },\n registerTarget: function registerTarget(target, vm, force) {\n if (!inBrowser) return;\n\n if (this.trackInstances && !force && this.targets[target]) {\n console.warn(\"[portal-vue]: Target \".concat(target, \" already exists\"));\n }\n\n this.$set(this.targets, target, Object.freeze([vm]));\n },\n unregisterTarget: function unregisterTarget(target) {\n this.$delete(this.targets, target);\n },\n registerSource: function registerSource(source, vm, force) {\n if (!inBrowser) return;\n\n if (this.trackInstances && !force && this.sources[source]) {\n console.warn(\"[portal-vue]: source \".concat(source, \" already exists\"));\n }\n\n this.$set(this.sources, source, Object.freeze([vm]));\n },\n unregisterSource: function unregisterSource(source) {\n this.$delete(this.sources, source);\n },\n hasTarget: function hasTarget(to) {\n return !!(this.targets[to] && this.targets[to][0]);\n },\n hasSource: function hasSource(to) {\n return !!(this.sources[to] && this.sources[to][0]);\n },\n hasContentFor: function hasContentFor(to) {\n return !!this.transports[to] && !!this.transports[to].length;\n },\n // Internal\n $_getTransportIndex: function $_getTransportIndex(_ref) {\n var to = _ref.to,\n from = _ref.from;\n\n for (var i in this.transports[to]) {\n if (this.transports[to][i].from === from) {\n return +i;\n }\n }\n\n return -1;\n }\n }\n});\nvar wormhole = new Wormhole(transports);\n\nvar _id = 1;\nvar Portal = Vue.extend({\n name: 'portal',\n props: {\n disabled: {\n type: Boolean\n },\n name: {\n type: String,\n default: function _default() {\n return String(_id++);\n }\n },\n order: {\n type: Number,\n default: 0\n },\n slim: {\n type: Boolean\n },\n slotProps: {\n type: Object,\n default: function _default() {\n return {};\n }\n },\n tag: {\n type: String,\n default: 'DIV'\n },\n to: {\n type: String,\n default: function _default() {\n return String(Math.round(Math.random() * 10000000));\n }\n }\n },\n created: function created() {\n var _this = this;\n\n this.$nextTick(function () {\n wormhole.registerSource(_this.name, _this);\n });\n },\n mounted: function mounted() {\n if (!this.disabled) {\n this.sendUpdate();\n }\n },\n updated: function updated() {\n if (this.disabled) {\n this.clear();\n } else {\n this.sendUpdate();\n }\n },\n beforeDestroy: function beforeDestroy() {\n wormhole.unregisterSource(this.name);\n this.clear();\n },\n watch: {\n to: function to(newValue, oldValue) {\n oldValue && oldValue !== newValue && this.clear(oldValue);\n this.sendUpdate();\n }\n },\n methods: {\n clear: function clear(target) {\n var closer = {\n from: this.name,\n to: target || this.to\n };\n wormhole.close(closer);\n },\n normalizeSlots: function normalizeSlots() {\n return this.$scopedSlots.default ? [this.$scopedSlots.default] : this.$slots.default;\n },\n normalizeOwnChildren: function normalizeOwnChildren(children) {\n return typeof children === 'function' ? children(this.slotProps) : children;\n },\n sendUpdate: function sendUpdate() {\n var slotContent = this.normalizeSlots();\n\n if (slotContent) {\n var transport = {\n from: this.name,\n to: this.to,\n passengers: _toConsumableArray(slotContent),\n order: this.order\n };\n wormhole.open(transport);\n } else {\n this.clear();\n }\n }\n },\n render: function render(h) {\n var children = this.$slots.default || this.$scopedSlots.default || [];\n var Tag = this.tag;\n\n if (children && this.disabled) {\n return children.length <= 1 && this.slim ? this.normalizeOwnChildren(children)[0] : h(Tag, [this.normalizeOwnChildren(children)]);\n } else {\n return this.slim ? h() : h(Tag, {\n class: {\n 'v-portal': true\n },\n style: {\n display: 'none'\n },\n key: 'v-portal-placeholder'\n });\n }\n }\n});\n\nvar PortalTarget = Vue.extend({\n name: 'portalTarget',\n props: {\n multiple: {\n type: Boolean,\n default: false\n },\n name: {\n type: String,\n required: true\n },\n slim: {\n type: Boolean,\n default: false\n },\n slotProps: {\n type: Object,\n default: function _default() {\n return {};\n }\n },\n tag: {\n type: String,\n default: 'div'\n },\n transition: {\n type: [String, Object, Function]\n }\n },\n data: function data() {\n return {\n transports: wormhole.transports,\n firstRender: true\n };\n },\n created: function created() {\n var _this = this;\n\n this.$nextTick(function () {\n wormhole.registerTarget(_this.name, _this);\n });\n },\n watch: {\n ownTransports: function ownTransports() {\n this.$emit('change', this.children().length > 0);\n },\n name: function name(newVal, oldVal) {\n /**\r\n * TODO\r\n * This should warn as well ...\r\n */\n wormhole.unregisterTarget(oldVal);\n wormhole.registerTarget(newVal, this);\n }\n },\n mounted: function mounted() {\n var _this2 = this;\n\n if (this.transition) {\n this.$nextTick(function () {\n // only when we have a transition, because it causes a re-render\n _this2.firstRender = false;\n });\n }\n },\n beforeDestroy: function beforeDestroy() {\n wormhole.unregisterTarget(this.name);\n },\n computed: {\n ownTransports: function ownTransports() {\n var transports = this.transports[this.name] || [];\n\n if (this.multiple) {\n return transports;\n }\n\n return transports.length === 0 ? [] : [transports[transports.length - 1]];\n },\n passengers: function passengers() {\n return combinePassengers(this.ownTransports, this.slotProps);\n }\n },\n methods: {\n // can't be a computed prop because it has to \"react\" to $slot changes.\n children: function children() {\n return this.passengers.length !== 0 ? this.passengers : this.$scopedSlots.default ? this.$scopedSlots.default(this.slotProps) : this.$slots.default || [];\n },\n // can't be a computed prop because it has to \"react\" to this.children().\n noWrapper: function noWrapper() {\n var noWrapper = this.slim && !this.transition;\n\n if (noWrapper && this.children().length > 1) {\n console.warn('[portal-vue]: PortalTarget with `slim` option received more than one child element.');\n }\n\n return noWrapper;\n }\n },\n render: function render(h) {\n var noWrapper = this.noWrapper();\n var children = this.children();\n var Tag = this.transition || this.tag;\n return noWrapper ? children[0] : this.slim && !Tag ? h() : h(Tag, {\n props: {\n // if we have a transition component, pass the tag if it exists\n tag: this.transition && this.tag ? this.tag : undefined\n },\n class: {\n 'vue-portal-target': true\n }\n }, children);\n }\n});\n\nvar _id$1 = 0;\nvar portalProps = ['disabled', 'name', 'order', 'slim', 'slotProps', 'tag', 'to'];\nvar targetProps = ['multiple', 'transition'];\nvar MountingPortal = Vue.extend({\n name: 'MountingPortal',\n inheritAttrs: false,\n props: {\n append: {\n type: [Boolean, String]\n },\n bail: {\n type: Boolean\n },\n mountTo: {\n type: String,\n required: true\n },\n // Portal\n disabled: {\n type: Boolean\n },\n // name for the portal\n name: {\n type: String,\n default: function _default() {\n return 'mounted_' + String(_id$1++);\n }\n },\n order: {\n type: Number,\n default: 0\n },\n slim: {\n type: Boolean\n },\n slotProps: {\n type: Object,\n default: function _default() {\n return {};\n }\n },\n tag: {\n type: String,\n default: 'DIV'\n },\n // name for the target\n to: {\n type: String,\n default: function _default() {\n return String(Math.round(Math.random() * 10000000));\n }\n },\n // Target\n multiple: {\n type: Boolean,\n default: false\n },\n targetSlim: {\n type: Boolean\n },\n targetSlotProps: {\n type: Object,\n default: function _default() {\n return {};\n }\n },\n targetTag: {\n type: String,\n default: 'div'\n },\n transition: {\n type: [String, Object, Function]\n }\n },\n created: function created() {\n if (typeof document === 'undefined') return;\n var el = document.querySelector(this.mountTo);\n\n if (!el) {\n console.error(\"[portal-vue]: Mount Point '\".concat(this.mountTo, \"' not found in document\"));\n return;\n }\n\n var props = this.$props; // Target already exists\n\n if (wormhole.targets[props.name]) {\n if (props.bail) {\n console.warn(\"[portal-vue]: Target \".concat(props.name, \" is already mounted.\\n Aborting because 'bail: true' is set\"));\n } else {\n this.portalTarget = wormhole.targets[props.name];\n }\n\n return;\n }\n\n var append = props.append;\n\n if (append) {\n var type = typeof append === 'string' ? append : 'DIV';\n var mountEl = document.createElement(type);\n el.appendChild(mountEl);\n el = mountEl;\n } // get props for target from $props\n // we have to rename a few of them\n\n\n var _props = pick(this.$props, targetProps);\n\n _props.slim = this.targetSlim;\n _props.tag = this.targetTag;\n _props.slotProps = this.targetSlotProps;\n _props.name = this.to;\n this.portalTarget = new PortalTarget({\n el: el,\n parent: this.$parent || this,\n propsData: _props\n });\n },\n beforeDestroy: function beforeDestroy() {\n var target = this.portalTarget;\n\n if (this.append) {\n var el = target.$el;\n el.parentNode.removeChild(el);\n }\n\n target.$destroy();\n },\n render: function render(h) {\n if (!this.portalTarget) {\n console.warn(\"[portal-vue] Target wasn't mounted\");\n return h();\n } // if there's no \"manual\" scoped slot, so we create a ourselves\n\n\n if (!this.$scopedSlots.manual) {\n var props = pick(this.$props, portalProps);\n return h(Portal, {\n props: props,\n attrs: this.$attrs,\n on: this.$listeners,\n scopedSlots: this.$scopedSlots\n }, this.$slots.default);\n } // else, we render the scoped slot\n\n\n var content = this.$scopedSlots.manual({\n to: this.to\n }); // if user used