{"version":3,"mappings":"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","names":["trackEvent","a","e","h","s","t","d","u","r","n","i","c","l","f","o","g","m","b","p","v","y","w","x","E","S","P","C","T","M","O","A","this","window","getSize","require$$0","matchesSelector","utils","console","cell","require$$1","require$$2","require$$3","require$$4","require$$5","getComputedStyle","Flickity","slide","flickity","require$$6","initializeMaps","Carousel","Fancybox","_a"],"ignoreList":[0,1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21],"sources":["../../../node_modules/plausible-tracker/build/module/lib/request.js","../../../node_modules/plausible-tracker/build/module/lib/tracker.js","../../../Scripts/analytics.ts","../../../node_modules/@wagich/bluc-map/dist/bluc-map.js","../../../node_modules/@fancyapps/ui/dist/index.esm.js","../../../node_modules/ev-emitter/ev-emitter.js","../../../node_modules/get-size/get-size.js","../../../node_modules/desandro-matches-selector/matches-selector.js","../../../node_modules/fizzy-ui-utils/utils.js","../../../node_modules/flickity/js/cell.js","../../../node_modules/flickity/js/slide.js","../../../node_modules/flickity/js/animate.js","../../../node_modules/flickity/js/flickity.js","../../../node_modules/unipointer/unipointer.js","../../../node_modules/unidragger/unidragger.js","../../../node_modules/flickity/js/drag.js","../../../node_modules/flickity/js/prev-next-button.js","../../../node_modules/flickity/js/page-dots.js","../../../node_modules/flickity/js/player.js","../../../node_modules/flickity/js/add-remove-cell.js","../../../node_modules/flickity/js/lazyload.js","../../../node_modules/flickity/js/index.js","../../../Scripts/accordion.ts","../../../Scripts/index.ts"],"sourcesContent":["/**\n * @internal\n * Sends an event to Plausible's API\n *\n * @param data - Event data to send\n * @param options - Event options\n */\nexport function sendEvent(eventName, data, options) {\n const isLocalhost = /^localhost$|^127(?:\\.[0-9]+){0,2}\\.[0-9]+$|^(?:0*:)*?:?0*1$/.test(location.hostname) || location.protocol === 'file:';\n if (!data.trackLocalhost && isLocalhost) {\n return console.warn('[Plausible] Ignoring event because website is running locally');\n }\n try {\n if (window.localStorage.plausible_ignore === 'true') {\n return console.warn('[Plausible] Ignoring event because \"plausible_ignore\" is set to \"true\" in localStorage');\n }\n }\n catch (e) {\n null;\n }\n const payload = {\n n: eventName,\n u: data.url,\n d: data.domain,\n r: data.referrer,\n w: data.deviceWidth,\n h: data.hashMode ? 1 : 0,\n p: options && options.props ? JSON.stringify(options.props) : undefined,\n };\n const req = new XMLHttpRequest();\n req.open('POST', `${data.apiHost}/api/event`, true);\n req.setRequestHeader('Content-Type', 'text/plain');\n req.send(JSON.stringify(payload));\n // eslint-disable-next-line functional/immutable-data\n req.onreadystatechange = () => {\n if (req.readyState !== 4)\n return;\n if (options && options.callback) {\n options.callback();\n }\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvcmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyQkE7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLFNBQVMsQ0FDdkIsU0FBaUIsRUFDakIsSUFBZ0MsRUFDaEMsT0FBc0I7SUFFdEIsTUFBTSxXQUFXLEdBQ2YsNkRBQTZELENBQUMsSUFBSSxDQUNoRSxRQUFRLENBQUMsUUFBUSxDQUNsQixJQUFJLFFBQVEsQ0FBQyxRQUFRLEtBQUssT0FBTyxDQUFDO0lBRXJDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxJQUFJLFdBQVcsRUFBRTtRQUN2QyxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQ2pCLCtEQUErRCxDQUNoRSxDQUFDO0tBQ0g7SUFFRCxJQUFJO1FBQ0YsSUFBSSxNQUFNLENBQUMsWUFBWSxDQUFDLGdCQUFnQixLQUFLLE1BQU0sRUFBRTtZQUNuRCxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQ2pCLHdGQUF3RixDQUN6RixDQUFDO1NBQ0g7S0FDRjtJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsSUFBSSxDQUFDO0tBQ047SUFFRCxNQUFNLE9BQU8sR0FBaUI7UUFDNUIsQ0FBQyxFQUFFLFNBQVM7UUFDWixDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUc7UUFDWCxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU07UUFDZCxDQUFDLEVBQUUsSUFBSSxDQUFDLFFBQVE7UUFDaEIsQ0FBQyxFQUFFLElBQUksQ0FBQyxXQUFXO1FBQ25CLENBQUMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDeEIsQ0FBQyxFQUFFLE9BQU8sSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUztLQUN4RSxDQUFDO0lBRUYsTUFBTSxHQUFHLEdBQUcsSUFBSSxjQUFjLEVBQUUsQ0FBQztJQUNqQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxPQUFPLFlBQVksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNwRCxHQUFHLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ25ELEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ2xDLHFEQUFxRDtJQUNyRCxHQUFHLENBQUMsa0JBQWtCLEdBQUcsR0FBRyxFQUFFO1FBQzVCLElBQUksR0FBRyxDQUFDLFVBQVUsS0FBSyxDQUFDO1lBQUUsT0FBTztRQUNqQyxJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsUUFBUSxFQUFFO1lBQy9CLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUNwQjtJQUNILENBQUMsQ0FBQztBQUNKLENBQUMifQ==","import { sendEvent } from './request';\n/**\n * Initializes the tracker with your default values.\n *\n * ### Example (es module)\n * ```js\n * import Plausible from 'plausible-tracker'\n *\n * const { enableAutoPageviews, trackEvent } = Plausible({\n * domain: 'my-app-domain.com',\n * hashMode: true\n * })\n *\n * enableAutoPageviews()\n *\n * function onUserRegister() {\n * trackEvent('register')\n * }\n * ```\n *\n * ### Example (commonjs)\n * ```js\n * var Plausible = require('plausible-tracker');\n *\n * var { enableAutoPageviews, trackEvent } = Plausible({\n * domain: 'my-app-domain.com',\n * hashMode: true\n * })\n *\n * enableAutoPageviews()\n *\n * function onUserRegister() {\n * trackEvent('register')\n * }\n * ```\n *\n * @param defaults - Default event parameters that will be applied to all requests.\n */\nexport default function Plausible(defaults) {\n const getConfig = () => ({\n hashMode: false,\n trackLocalhost: false,\n url: location.href,\n domain: location.hostname,\n referrer: document.referrer || null,\n deviceWidth: window.innerWidth,\n apiHost: 'https://plausible.io',\n ...defaults,\n });\n const trackEvent = (eventName, options, eventData) => {\n sendEvent(eventName, { ...getConfig(), ...eventData }, options);\n };\n const trackPageview = (eventData, options) => {\n trackEvent('pageview', options, eventData);\n };\n const enableAutoPageviews = () => {\n const page = () => trackPageview();\n // Attach pushState and popState listeners\n const originalPushState = history.pushState;\n if (originalPushState) {\n // eslint-disable-next-line functional/immutable-data\n history.pushState = function (data, title, url) {\n originalPushState.apply(this, [data, title, url]);\n page();\n };\n addEventListener('popstate', page);\n }\n // Attach hashchange listener\n if (defaults && defaults.hashMode) {\n addEventListener('hashchange', page);\n }\n // Trigger first page view\n trackPageview();\n return function cleanup() {\n if (originalPushState) {\n // eslint-disable-next-line functional/immutable-data\n history.pushState = originalPushState;\n removeEventListener('popstate', page);\n }\n if (defaults && defaults.hashMode) {\n removeEventListener('hashchange', page);\n }\n };\n };\n const enableAutoOutboundTracking = (targetNode = document, observerInit = {\n subtree: true,\n childList: true,\n attributes: true,\n attributeFilter: ['href'],\n }) => {\n function trackClick(event) {\n trackEvent('Outbound Link: Click', { props: { url: this.href } });\n /* istanbul ignore next */\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n if (!(typeof process !== 'undefined' &&\n process &&\n process.env.NODE_ENV === 'test')) {\n setTimeout(() => {\n // eslint-disable-next-line functional/immutable-data\n location.href = this.href;\n }, 150);\n }\n event.preventDefault();\n }\n // eslint-disable-next-line functional/prefer-readonly-type\n const tracked = new Set();\n function addNode(node) {\n if (node instanceof HTMLAnchorElement) {\n if (node.host !== location.host) {\n node.addEventListener('click', trackClick);\n tracked.add(node);\n }\n } /* istanbul ignore next */\n else if ('querySelectorAll' in node) {\n node.querySelectorAll('a').forEach(addNode);\n }\n }\n function removeNode(node) {\n if (node instanceof HTMLAnchorElement) {\n node.removeEventListener('click', trackClick);\n tracked.delete(node);\n } /* istanbul ignore next */\n else if ('querySelectorAll' in node) {\n node.querySelectorAll('a').forEach(removeNode);\n }\n }\n const observer = new MutationObserver((mutations) => {\n mutations.forEach((mutation) => {\n if (mutation.type === 'attributes') {\n // Handle changed href\n removeNode(mutation.target);\n addNode(mutation.target);\n } /* istanbul ignore next */\n else if (mutation.type === 'childList') {\n // Handle added nodes\n mutation.addedNodes.forEach(addNode);\n // Handle removed nodes\n mutation.removedNodes.forEach(removeNode);\n }\n });\n });\n // Track existing nodes\n targetNode.querySelectorAll('a').forEach(addNode);\n // Observe mutations\n observer.observe(targetNode, observerInit);\n return function cleanup() {\n tracked.forEach((a) => {\n a.removeEventListener('click', trackClick);\n });\n tracked.clear();\n observer.disconnect();\n };\n };\n return {\n trackEvent,\n trackPageview,\n enableAutoPageviews,\n enableAutoOutboundTracking,\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2tlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhY2tlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQXFMcEQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9DRztBQUNILE1BQU0sQ0FBQyxPQUFPLFVBQVUsU0FBUyxDQUMvQixRQUErQjtJQU8vQixNQUFNLFNBQVMsR0FBRyxHQUErQixFQUFFLENBQUMsQ0FBQztRQUNuRCxRQUFRLEVBQUUsS0FBSztRQUNmLGNBQWMsRUFBRSxLQUFLO1FBQ3JCLEdBQUcsRUFBRSxRQUFRLENBQUMsSUFBSTtRQUNsQixNQUFNLEVBQUUsUUFBUSxDQUFDLFFBQVE7UUFDekIsUUFBUSxFQUFFLFFBQVEsQ0FBQyxRQUFRLElBQUksSUFBSTtRQUNuQyxXQUFXLEVBQUUsTUFBTSxDQUFDLFVBQVU7UUFDOUIsT0FBTyxFQUFFLHNCQUFzQjtRQUMvQixHQUFHLFFBQVE7S0FDWixDQUFDLENBQUM7SUFFSCxNQUFNLFVBQVUsR0FBZSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLEVBQUU7UUFDL0QsU0FBUyxDQUFDLFNBQVMsRUFBRSxFQUFFLEdBQUcsU0FBUyxFQUFFLEVBQUUsR0FBRyxTQUFTLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNsRSxDQUFDLENBQUM7SUFFRixNQUFNLGFBQWEsR0FBa0IsQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLEVBQUU7UUFDMUQsVUFBVSxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDN0MsQ0FBQyxDQUFDO0lBRUYsTUFBTSxtQkFBbUIsR0FBd0IsR0FBRyxFQUFFO1FBQ3BELE1BQU0sSUFBSSxHQUFHLEdBQUcsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ25DLDBDQUEwQztRQUMxQyxN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","import Plausible, { type EventOptions, type PlausibleOptions } from \"plausible-tracker\";\n\nconst plausible = Plausible({\n\tdomain: \"tennisclub-thun.ch\",\n});\n\nfor (let element of document.querySelectorAll(\"a[href^='mailto'],a[href^='tel']\")) {\n\telement.addEventListener(\"click\", e => {\n\t\ttrackEvent(\"Kontaktlink aktiviert\");\n\t});\n}\n\nexport function trackPageView() {\n\ttry {\n\t\tplausible.trackPageview(undefined, { props: { Sprache: document.documentElement.lang } });\n\t} catch { }\n}\n\nexport function trackEvent(eventName: string, options?: EventOptions, eventData?: PlausibleOptions) {\n\ttry {\n\t\tplausible.trackEvent(eventName, options, eventData);\n\t} catch { }\n}\n","function h(s, t, e) {\n s.insertBefore(t, e || null);\n}\nfunction d(s) {\n s.parentNode && s.parentNode.removeChild(s);\n}\nfunction u(s) {\n const t = {};\n for (const r in s)\n t[r] = [e(s[r])];\n function e(r) {\n return function() {\n return {\n c: function() {\n },\n // noop\n m: function(n, i) {\n h(n, r.cloneNode(!0), i);\n },\n d: function(n) {\n n && d(r);\n },\n l: function() {\n }\n // noop\n };\n };\n }\n return t;\n}\nfunction a(s) {\n let t = s.parentElement;\n for (; t; ) {\n if (t.tagName.indexOf(\"-\") !== -1)\n return t;\n t = t.parentElement;\n }\n return null;\n}\nfunction c(s) {\n let t = document.createDocumentFragment();\n for (; s.firstChild; )\n t.appendChild(s.firstChild);\n return t;\n}\nconst l = /* @__PURE__ */ new Map(), f = new MutationObserver((s) => {\n s.forEach((t) => {\n const e = t.target, r = t.attributeName, o = e.getAttribute(r);\n e.forwardAttributeToProp(r, o);\n });\n});\nfunction g(s) {\n let t = document.querySelectorAll(\"[data-svelte-retag-render]\");\n if (t.length !== 0)\n for (let e of t)\n e.isConnected && e.parentElement.closest('[data-svelte-retag-render=\"light\"]') === null && (e.removeAttribute(\"data-svelte-retag-render\"), e._renderSvelteComponent());\n}\nfunction m(s) {\n window.customElements.get(\"svelte-retag\") || (window.customElements.define(\"svelte-retag\", class extends HTMLElement {\n // noop\n }), window.customElements.define(\"svelte-retag-default\", class extends HTMLElement {\n // noop\n })), window.customElements.define(s.tagname, class extends HTMLElement {\n constructor() {\n if (super(), this._debug(\"constructor()\"), this.attributesObserved = !1, s.shadow && (this.attachShadow({ mode: \"open\" }), this._root = document.createElement(\"svelte-retag\"), this.shadowRoot.appendChild(this._root), s.href)) {\n let t = document.createElement(\"link\");\n t.setAttribute(\"href\", s.href), t.setAttribute(\"rel\", \"stylesheet\"), this.shadowRoot.appendChild(t);\n }\n }\n /**\n * Attributes we're watching for changes after render (doesn't affect attributes already present prior to render).\n *\n * NOTE: This only applies if opts.attributes is an array. If opts.attributes is true, then all attributes are\n * watched using the mutation observer instead.\n *\n * @returns string[]\n */\n static get observedAttributes() {\n return Array.isArray(s.attributes) ? s.attributes : [];\n }\n /**\n * Attached to DOM.\n */\n connectedCallback() {\n this._debug(\"connectedCallback()\"), this.slotEls = {};\n const t = document.readyState === \"loading\";\n if (!s.shadow)\n if (this.hasAttribute(\"data-svelte-retag-hydratable\"))\n if (t) {\n this._onSlotsReady(() => {\n this._initLightRoot(), this._hydrateLightSlots(), this._queueForRender();\n });\n return;\n } else\n this._initLightRoot(), this._hydrateLightSlots();\n else\n this._initLightRoot();\n s.shadow ? this._observeSlots(!0) : t && (this._observeSlots(!0), this._onSlotsReady(() => {\n this._observeSlots(!1);\n })), this._queueForRender(), s.hydratable && this.setAttribute(\"data-svelte-retag-hydratable\", \"\");\n }\n /**\n * Removed from DOM (could be called inside another custom element that starts rendering after this one). In that\n * situation, the connectedCallback() will be executed again (most likely with constructor() as well, unfortunately).\n */\n disconnectedCallback() {\n if (this._debug(\"disconnectedCallback()\"), this.removeAttribute(\"data-svelte-retag-render\"), this.removeAttribute(\"data-svelte-retag-hydratable\"), this._observeSlots(!1), this.componentInstance)\n try {\n this.componentInstance.$destroy(), delete this.componentInstance;\n } catch (t) {\n console.error(`Error destroying Svelte component in '${this.tagName}'s disconnectedCallback(): ${t}`);\n }\n s.shadow || (this._restoreLightSlots(), this.removeChild(this._root));\n }\n /**\n * Callback/hook for observedAttributes.\n *\n * @param {string} name\n * @param {string} oldValue\n * @param {string} newValue\n */\n attributeChangedCallback(t, e, r) {\n this._debug(\"attributes changed\", { name: t, oldValue: e, newValue: r }), this.forwardAttributeToProp(t, r);\n }\n /**\n * Forward modifications to element attributes to the corresponding Svelte prop (if applicable).\n *\n * @param {string} name\n * @param {string} value\n */\n forwardAttributeToProp(t, e) {\n if (this._debug(\"forwardAttributeToProp\", { name: t, value: e }), this.componentInstance) {\n let r = this._translateAttribute(t);\n this.componentInstance.$set({ [r]: e });\n }\n }\n /**\n * Setup a wrapper in the light DOM which can keep the rendered Svelte component separate from the default Slot\n * content, which is potentially being actively appended (at least while the browser parses during loading).\n */\n _initLightRoot() {\n let t = this.querySelector(\"svelte-retag\");\n t !== null && t.parentElement === this ? (this._debug(\"_initLightRoot(): Restore from existing light DOM root\"), this._root = t) : (this._root = document.createElement(\"svelte-retag\"), this.prepend(this._root));\n }\n /**\n * Queues the provided callback to execute when we think all slots are fully loaded and available to fetch and\n * manipulate.\n *\n * @param {callback} callback\n */\n _onSlotsReady(t) {\n document.addEventListener(\"readystatechange\", () => {\n document.readyState === \"interactive\" && t();\n });\n }\n /**\n * Converts the provided lowercase attribute name to the correct case-sensitive component prop name, if possible.\n *\n * @param {string} attributeName\n * @returns {string}\n */\n _translateAttribute(t) {\n return t = t.toLowerCase(), this.propMap && this.propMap.has(t) ? this.propMap.get(t) : (this._debug(`_translateAttribute(): ${t} not found`), t);\n }\n /**\n * To support context, this traverses the DOM to find potential parent elements (also managed by svelte-retag) which\n * may contain context necessary to render this component.\n *\n * See context functions at: https://svelte.dev/docs/svelte#setcontext\n *\n * @returns {Map|null}\n */\n _getAncestorContext() {\n var e, r;\n let t = this;\n for (; t.parentNode; ) {\n t = t.parentNode;\n let o = (r = (e = t == null ? void 0 : t.componentInstance) == null ? void 0 : e.$$) == null ? void 0 : r.context;\n if (o instanceof Map)\n return o;\n }\n return null;\n }\n /**\n * Queue this element for render in the next animation frame. This offers the opportunity to render known available\n * elements all at once and, ideally, from the top down (to preserve context).\n */\n _queueForRender() {\n if (!this.isConnected) {\n this._debug(\"queueForRender(): skipped, already disconnected\");\n return;\n }\n if (this.parentElement.closest('[data-svelte-retag-render=\"light\"]') !== null) {\n this._debug(\"queueForRender(): skipped, light DOM parent is queued for render\");\n return;\n }\n this.setAttribute(\"data-svelte-retag-render\", s.shadow ? \"shadow\" : \"light\"), requestAnimationFrame(g);\n }\n /**\n * Renders (or rerenders) the Svelte component into this custom element based on the latest properties and slots\n * (with slots initialized elsewhere).\n *\n * IMPORTANT:\n *\n * Despite the intuitive name, this method is private since its functionality requires a deeper understanding\n * of how it depends on current internal state and how it alters internal state. Be sure to study how it's called\n * before calling it yourself externally. (\"Yarrr! Here be dragons! 🔥🐉\")\n *\n * That said... this is currently the workflow:\n *\n * 1. Wait for connection to DOM\n * 2. Ensure slots are properly prepared (e.g. in case of hydration) or observed (in case actively parsing DOM, e.g.\n * IIFE/UMD or shadow DOM) in case there are any changes *after* this render\n * 3. _queueForRender(): Kick off to requestAnimationFrame() to queue render of the component (instead of rendering\n * immediately) to ensure that all currently connected and available components are taken into account (this is\n * necessary for properly supporting context to prevent from initializing components out of order).\n * 4. renderElements(): Renders through the DOM tree in document order and from the top down (parent to child),\n * reaching this element instantiating this component, ensuring context is preserved.\n *\n */\n _renderSvelteComponent() {\n this._debug(\"renderSvelteComponent()\"), s.shadow ? this.slotEls = this._getShadowSlots() : this.slotEls = this._getLightSlots(), this._root.innerHTML = \"\";\n const t = this._getAncestorContext() || /* @__PURE__ */ new Map();\n let e = {\n $$scope: {},\n // Convert our list of slots into Svelte-specific slot objects\n $$slots: u(this.slotEls)\n // All other *initial* props are pulled dynamically from element attributes (see proxy below)...\n };\n if (!l.has(this.tagName))\n this.propMap = /* @__PURE__ */ new Map(), l.set(this.tagName, this.propMap), e = new Proxy(e, {\n get: (r, o) => {\n let n = o.toString();\n o.indexOf(\"$$\") === -1 && this.propMap.set(n.toLowerCase(), n);\n let i = this.attributes.getNamedItem(n);\n return i !== null ? r[n] = i.value : r[o];\n }\n });\n else {\n this.propMap = l.get(this.tagName);\n for (let r of [...this.attributes])\n r.name.indexOf(\"data-svelte-retag\") === -1 && (e[this._translateAttribute(r.name)] = r.value);\n }\n this.componentInstance = new s.component({ target: this._root, props: e, context: t }), s.attributes === !0 && !this.attributesObserved && (this.attributesObserved = !0, this.propMap.size > 0 ? f.observe(this, {\n attributes: !0,\n // implicit, but... 🤷‍♂️\n attributeFilter: [...this.propMap.keys()]\n }) : this._debug(\"renderSvelteComponent(): skipped attribute observer, no props\")), this._debug(\"renderSvelteComponent(): completed\");\n }\n /**\n * Fetches slots from pre-rendered Svelte component HTML using special markers (either data attributes or custom\n * wrappers). Note that this will only work during initialization and only if the Svelte retag instance is\n * hydratable.\n */\n _hydrateLightSlots() {\n let t = this._root.querySelectorAll(\"[data-svelte-retag-slot]\");\n for (let r of t) {\n if (a(r) !== this._root)\n continue;\n let n = r.getAttribute(\"slot\");\n this.slotEls[n] = r;\n }\n let e = this.querySelector(\"svelte-retag-default\");\n return e !== null && (this.slotEls.default = e), this._restoreLightSlots(), !0;\n }\n /**\n * Indicates if the provided element instance belongs to this custom element or not.\n *\n * @param {Element} slot\n * @returns {boolean}\n */\n _isOwnSlot(t) {\n let e = a(t);\n return e === null ? !1 : e === this;\n }\n /**\n * Returns a map of slot names and the corresponding HTMLElement (named slots) or DocumentFragment (default slots).\n *\n * IMPORTANT: Since this custom element is the \"root\", these slots must be removed (which is done in THIS method).\n *\n * TODO: Problematic name. We are \"getting\" but we're also mangling/mutating state (which *is* necessary). \"Get\" may be confusing here; is there a better name?\n *\n * @returns {SlotList}\n */\n _getLightSlots() {\n this._debug(\"_getLightSlots()\");\n let t = {};\n const e = this.querySelectorAll(\"[slot]\");\n for (let i of e)\n this._isOwnSlot(i) && (t[i.slot] = i, s.hydratable && i.setAttribute(\"data-svelte-retag-slot\", \"\"), this.removeChild(i));\n let r = document.createDocumentFragment();\n s.hydratable && (r = document.createElement(\"svelte-retag-default\"));\n let o = [...this.childNodes], n = \"\";\n for (let i of o) {\n if (i instanceof HTMLElement && i.tagName === \"SVELTE-RETAG\") {\n this._debug(\"_getLightSlots(): skipping container\");\n continue;\n }\n i instanceof Text ? n += i.textContent : i.outerHTML && (n += i.outerHTML), r.appendChild(i);\n }\n return n.trim() !== \"\" && (t.default ? console.error(`svelteRetag: '${this.tagName}': Found elements without slot attribute when using slot=\"default\"`) : t.default = r), t;\n }\n /**\n * Go through originally removed slots and restore back to the custom element.\n */\n _restoreLightSlots() {\n this._debug(\"_restoreLightSlots:\", this.slotEls);\n for (let t in this.slotEls) {\n let e = this.slotEls[t];\n e.tagName === \"SVELTE-RETAG-DEFAULT\" ? this.prepend(c(e)) : (this.prepend(e), e instanceof HTMLElement && e.hasAttribute(\"data-svelte-retag-slot\") && e.removeAttribute(\"data-svelte-retag-slot\"));\n }\n this.slotEls = {};\n }\n /**\n * Fetches and returns references to the existing shadow DOM slots. Left unmodified.\n *\n * @returns {SlotList}\n */\n _getShadowSlots() {\n this._debug(\"_getShadowSlots()\");\n const t = this.querySelectorAll(\"[slot]\");\n let e = {}, r = this.innerHTML.length;\n return t.forEach((o) => {\n e[o.slot] = document.createElement(\"slot\"), e[o.slot].setAttribute(\"name\", o.slot), r -= o.outerHTML.length;\n }), r > 0 && (e.default = document.createElement(\"slot\")), e;\n }\n /**\n * Toggle on/off the MutationObserver used to watch for changes in child slots.\n */\n _observeSlots(t) {\n t !== this.slotObserverActive && (this.slotObserver || (this.slotObserver = new MutationObserver((e) => {\n this._processSlotMutations(e);\n })), t ? (this.slotObserver.observe(this, { childList: !0, subtree: !1, attributes: !1 }), this._debug(\"_observeSlots: OBSERVE\")) : (this.slotObserver.disconnect(), this._debug(\"_observeSlots: DISCONNECT\")), this.slotObserverActive = t);\n }\n /**\n * Watches for slot changes, specifically:\n *\n * 1. Shadow DOM: All slot changes will queue a rerender of the Svelte component\n *\n * 2. Light DOM: Only additions will be accounted for. This is particularly because currently we only support\n * watching for changes during document parsing (i.e. document.readyState === 'loading', prior to the\n * 'DOMContentLoaded' event.\n *\n * @param {MutationRecord[]} mutations\n */\n _processSlotMutations(t) {\n this._debug(\"_processSlotMutations()\", t);\n let e = !1;\n for (let r of t)\n if (r.type === \"childList\") {\n if (s.shadow) {\n e = !0;\n break;\n } else if (r.addedNodes.length > 0) {\n e = !0;\n break;\n }\n }\n e && (s.shadow || (this._observeSlots(!1), this._restoreLightSlots(), this._observeSlots(!0)), this._debug(\"_processMutations(): Queue rerender\"), this._queueForRender());\n }\n /**\n * Pass through to console.log() but includes a reference to the custom element in the log for easier targeting for\n * debugging purposes.\n *\n * @param {...*}\n */\n _debug() {\n s.debugMode && (s.debugMode === \"cli\" ? console.log.apply(null, [performance.now(), this.tagName, ...arguments]) : console.log.apply(null, [performance.now(), this, ...arguments]));\n }\n });\n}\nfunction b() {\n document.querySelector(\"bluc-map\") != null && import(\"./bluc-map-V5jWel-1.js\").then((s) => {\n m({\n component: s.default,\n tagname: \"bluc-map\"\n });\n });\n}\nexport {\n b as initializeMaps\n};\n//# sourceMappingURL=bluc-map.js.map\n","const t=(t,e=1e4)=>(t=parseFloat(t+\"\")||0,Math.round((t+Number.EPSILON)*e)/e),e=function(t){if(!(t&&t instanceof Element&&t.offsetParent))return!1;const e=t.scrollHeight>t.clientHeight,i=window.getComputedStyle(t).overflowY,n=-1!==i.indexOf(\"hidden\"),s=-1!==i.indexOf(\"visible\");return e&&!n&&!s},i=function(t,n=void 0){return!(!t||t===document.body||n&&t===n)&&(e(t)?t:i(t.parentElement,n))},n=function(t){var e=(new DOMParser).parseFromString(t,\"text/html\").body;if(e.childElementCount>1){for(var i=document.createElement(\"div\");e.firstChild;)i.appendChild(e.firstChild);return i}return e.firstChild},s=t=>`${t||\"\"}`.split(\" \").filter((t=>!!t)),o=(t,e,i)=>{t&&s(e).forEach((e=>{t.classList.toggle(e,i||!1)}))};class a{constructor(t){Object.defineProperty(this,\"pageX\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"pageY\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"clientX\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"clientY\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"id\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"time\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"nativePointer\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.nativePointer=t,this.pageX=t.pageX,this.pageY=t.pageY,this.clientX=t.clientX,this.clientY=t.clientY,this.id=self.Touch&&t instanceof Touch?t.identifier:-1,this.time=Date.now()}}const r={passive:!1};class l{constructor(t,{start:e=(()=>!0),move:i=(()=>{}),end:n=(()=>{})}){Object.defineProperty(this,\"element\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"startCallback\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"moveCallback\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"endCallback\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"currentPointers\",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,\"startPointers\",{enumerable:!0,configurable:!0,writable:!0,value:[]}),this.element=t,this.startCallback=e,this.moveCallback=i,this.endCallback=n;for(const t of[\"onPointerStart\",\"onTouchStart\",\"onMove\",\"onTouchEnd\",\"onPointerEnd\",\"onWindowBlur\"])this[t]=this[t].bind(this);this.element.addEventListener(\"mousedown\",this.onPointerStart,r),this.element.addEventListener(\"touchstart\",this.onTouchStart,r),this.element.addEventListener(\"touchmove\",this.onMove,r),this.element.addEventListener(\"touchend\",this.onTouchEnd),this.element.addEventListener(\"touchcancel\",this.onTouchEnd)}onPointerStart(t){if(!t.buttons||0!==t.button)return;const e=new a(t);this.currentPointers.some((t=>t.id===e.id))||this.triggerPointerStart(e,t)&&(window.addEventListener(\"mousemove\",this.onMove),window.addEventListener(\"mouseup\",this.onPointerEnd),window.addEventListener(\"blur\",this.onWindowBlur))}onTouchStart(t){for(const e of Array.from(t.changedTouches||[]))this.triggerPointerStart(new a(e),t);window.addEventListener(\"blur\",this.onWindowBlur)}onMove(t){const e=this.currentPointers.slice(),i=\"changedTouches\"in t?Array.from(t.changedTouches||[]).map((t=>new a(t))):[new a(t)],n=[];for(const t of i){const e=this.currentPointers.findIndex((e=>e.id===t.id));e<0||(n.push(t),this.currentPointers[e]=t)}n.length&&this.moveCallback(t,this.currentPointers.slice(),e)}onPointerEnd(t){t.buttons>0&&0!==t.button||(this.triggerPointerEnd(t,new a(t)),window.removeEventListener(\"mousemove\",this.onMove),window.removeEventListener(\"mouseup\",this.onPointerEnd),window.removeEventListener(\"blur\",this.onWindowBlur))}onTouchEnd(t){for(const e of Array.from(t.changedTouches||[]))this.triggerPointerEnd(t,new a(e))}triggerPointerStart(t,e){return!!this.startCallback(e,t,this.currentPointers.slice())&&(this.currentPointers.push(t),this.startPointers.push(t),!0)}triggerPointerEnd(t,e){const i=this.currentPointers.findIndex((t=>t.id===e.id));i<0||(this.currentPointers.splice(i,1),this.startPointers.splice(i,1),this.endCallback(t,e,this.currentPointers.slice()))}onWindowBlur(){this.clear()}clear(){for(;this.currentPointers.length;){const t=this.currentPointers[this.currentPointers.length-1];this.currentPointers.splice(this.currentPointers.length-1,1),this.startPointers.splice(this.currentPointers.length-1,1),this.endCallback(new Event(\"touchend\",{bubbles:!0,cancelable:!0,clientX:t.clientX,clientY:t.clientY}),t,this.currentPointers.slice())}}stop(){this.element.removeEventListener(\"mousedown\",this.onPointerStart,r),this.element.removeEventListener(\"touchstart\",this.onTouchStart,r),this.element.removeEventListener(\"touchmove\",this.onMove,r),this.element.removeEventListener(\"touchend\",this.onTouchEnd),this.element.removeEventListener(\"touchcancel\",this.onTouchEnd),window.removeEventListener(\"mousemove\",this.onMove),window.removeEventListener(\"mouseup\",this.onPointerEnd),window.removeEventListener(\"blur\",this.onWindowBlur)}}function c(t,e){return e?Math.sqrt(Math.pow(e.clientX-t.clientX,2)+Math.pow(e.clientY-t.clientY,2)):0}function h(t,e){return e?{clientX:(t.clientX+e.clientX)/2,clientY:(t.clientY+e.clientY)/2}:t}const d=t=>\"object\"==typeof t&&null!==t&&t.constructor===Object&&\"[object Object]\"===Object.prototype.toString.call(t),u=(t,...e)=>{const i=e.length;for(let n=0;n{const n=Array.isArray(i)?[]:{};t[e]||Object.assign(t,{[e]:n}),d(i)?Object.assign(t[e],u(n,i)):Array.isArray(i)?Object.assign(t,{[e]:[...i]}):Object.assign(t,{[e]:i})}))}return t},p=function(t,e){return t.split(\".\").reduce(((t,e)=>\"object\"==typeof t?t[e]:void 0),e)};class f{constructor(t={}){Object.defineProperty(this,\"options\",{enumerable:!0,configurable:!0,writable:!0,value:t}),Object.defineProperty(this,\"events\",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),this.setOptions(t);for(const t of Object.getOwnPropertyNames(Object.getPrototypeOf(this)))t.startsWith(\"on\")&&\"function\"==typeof this[t]&&(this[t]=this[t].bind(this))}setOptions(t){this.options=t?u({},this.constructor.defaults,t):{};for(const[t,e]of Object.entries(this.option(\"on\")||{}))this.on(t,e)}option(t,...e){let i=p(t,this.options);return i&&\"function\"==typeof i&&(i=i.call(this,this,...e)),i}optionFor(t,e,i,...n){let s=p(e,t);var o;\"string\"!=typeof(o=s)||isNaN(o)||isNaN(parseFloat(o))||(s=parseFloat(s)),\"true\"===s&&(s=!0),\"false\"===s&&(s=!1),s&&\"function\"==typeof s&&(s=s.call(this,this,t,...n));let a=p(e,this.options);return a&&\"function\"==typeof a?s=a.call(this,this,t,...n,s):void 0===s&&(s=a),void 0===s?i:s}cn(t){const e=this.options.classes;return e&&e[t]||\"\"}localize(t,e=[]){t=String(t).replace(/\\{\\{(\\w+).?(\\w+)?\\}\\}/g,((t,e,i)=>{let n=\"\";return i?n=this.option(`${e[0]+e.toLowerCase().substring(1)}.l10n.${i}`):e&&(n=this.option(`l10n.${e}`)),n||(n=t),n}));for(let i=0;ie))}on(t,e){let i=[];\"string\"==typeof t?i=t.split(\" \"):Array.isArray(t)&&(i=t),this.events||(this.events=new Map),i.forEach((t=>{let i=this.events.get(t);i||(this.events.set(t,[]),i=[]),i.includes(e)||i.push(e),this.events.set(t,i)}))}off(t,e){let i=[];\"string\"==typeof t?i=t.split(\" \"):Array.isArray(t)&&(i=t),i.forEach((t=>{const i=this.events.get(t);if(Array.isArray(i)){const t=i.indexOf(e);t>-1&&i.splice(t,1)}}))}emit(t,...e){[...this.events.get(t)||[]].forEach((t=>t(this,...e))),\"*\"!==t&&this.emit(\"*\",t,...e)}}Object.defineProperty(f,\"version\",{enumerable:!0,configurable:!0,writable:!0,value:\"5.0.36\"}),Object.defineProperty(f,\"defaults\",{enumerable:!0,configurable:!0,writable:!0,value:{}});class g extends f{constructor(t={}){super(t),Object.defineProperty(this,\"plugins\",{enumerable:!0,configurable:!0,writable:!0,value:{}})}attachPlugins(t={}){const e=new Map;for(const[i,n]of Object.entries(t)){const t=this.option(i),s=this.plugins[i];s||!1===t?s&&!1===t&&(s.detach(),delete this.plugins[i]):e.set(i,new n(this,t||{}))}for(const[t,i]of e)this.plugins[t]=i,i.attach()}detachPlugins(t){t=t||Object.keys(this.plugins);for(const e of t){const t=this.plugins[e];t&&t.detach(),delete this.plugins[e]}return this.emit(\"detachPlugins\"),this}}var m;!function(t){t[t.Init=0]=\"Init\",t[t.Error=1]=\"Error\",t[t.Ready=2]=\"Ready\",t[t.Panning=3]=\"Panning\",t[t.Mousemove=4]=\"Mousemove\",t[t.Destroy=5]=\"Destroy\"}(m||(m={}));const v=[\"a\",\"b\",\"c\",\"d\",\"e\",\"f\"],b={PANUP:\"Move up\",PANDOWN:\"Move down\",PANLEFT:\"Move left\",PANRIGHT:\"Move right\",ZOOMIN:\"Zoom in\",ZOOMOUT:\"Zoom out\",TOGGLEZOOM:\"Toggle zoom level\",TOGGLE1TO1:\"Toggle zoom level\",ITERATEZOOM:\"Toggle zoom level\",ROTATECCW:\"Rotate counterclockwise\",ROTATECW:\"Rotate clockwise\",FLIPX:\"Flip horizontally\",FLIPY:\"Flip vertically\",FITX:\"Fit horizontally\",FITY:\"Fit vertically\",RESET:\"Reset\",TOGGLEFS:\"Toggle fullscreen\"},y={content:null,width:\"auto\",height:\"auto\",panMode:\"drag\",touch:!0,dragMinThreshold:3,lockAxis:!1,mouseMoveFactor:1,mouseMoveFriction:.12,zoom:!0,pinchToZoom:!0,panOnlyZoomed:\"auto\",minScale:1,maxScale:2,friction:.25,dragFriction:.35,decelFriction:.05,click:\"toggleZoom\",dblClick:!1,wheel:\"zoom\",wheelLimit:7,spinner:!0,bounds:\"auto\",infinite:!1,rubberband:!0,bounce:!0,maxVelocity:75,transformParent:!1,classes:{content:\"f-panzoom__content\",isLoading:\"is-loading\",canZoomIn:\"can-zoom_in\",canZoomOut:\"can-zoom_out\",isDraggable:\"is-draggable\",isDragging:\"is-dragging\",inFullscreen:\"in-fullscreen\",htmlHasFullscreen:\"with-panzoom-in-fullscreen\"},l10n:b},w='',x='
'+w+w+\"
\",E=t=>t&&null!==t&&t instanceof Element&&\"nodeType\"in t,S=(t,e)=>{t&&s(e).forEach((e=>{t.classList.remove(e)}))},P=(t,e)=>{t&&s(e).forEach((e=>{t.classList.add(e)}))},C={a:1,b:0,c:0,d:1,e:0,f:0},T=1e5,M=1e4,O=\"mousemove\",A=\"drag\",L=\"content\",z=\"auto\";let R=null,k=null;class I extends g{get fits(){return this.contentRect.width-this.contentRect.fitWidth<1&&this.contentRect.height-this.contentRect.fitHeight<1}get isTouchDevice(){return null===k&&(k=window.matchMedia(\"(hover: none)\").matches),k}get isMobile(){return null===R&&(R=/iPhone|iPad|iPod|Android/i.test(navigator.userAgent)),R}get panMode(){return this.options.panMode!==O||this.isTouchDevice?A:O}get panOnlyZoomed(){const t=this.options.panOnlyZoomed;return t===z?this.isTouchDevice:t}get isInfinite(){return this.option(\"infinite\")}get angle(){return 180*Math.atan2(this.current.b,this.current.a)/Math.PI||0}get targetAngle(){return 180*Math.atan2(this.target.b,this.target.a)/Math.PI||0}get scale(){const{a:t,b:e}=this.current;return Math.sqrt(t*t+e*e)||1}get targetScale(){const{a:t,b:e}=this.target;return Math.sqrt(t*t+e*e)||1}get minScale(){return this.option(\"minScale\")||1}get fullScale(){const{contentRect:t}=this;return t.fullWidth/t.fitWidth||1}get maxScale(){return this.fullScale*(this.option(\"maxScale\")||1)||1}get coverScale(){const{containerRect:t,contentRect:e}=this,i=Math.max(t.height/e.fitHeight,t.width/e.fitWidth)||1;return Math.min(this.fullScale,i)}get isScaling(){return Math.abs(this.targetScale-this.scale)>1e-5&&!this.isResting}get isContentLoading(){const t=this.content;return!!(t&&t instanceof HTMLImageElement)&&!t.complete}get isResting(){if(this.isBouncingX||this.isBouncingY)return!1;for(const t of v){const e=\"e\"==t||\"f\"===t?1e-4:1e-5;if(Math.abs(this.target[t]-this.current[t])>e)return!1}return!(!this.ignoreBounds&&!this.checkBounds().inBounds)}constructor(t,e={},i={}){var s;if(super(e),Object.defineProperty(this,\"pointerTracker\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"resizeObserver\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"updateTimer\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"clickTimer\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"rAF\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"isTicking\",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,\"ignoreBounds\",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,\"isBouncingX\",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,\"isBouncingY\",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,\"clicks\",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,\"trackingPoints\",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,\"pwt\",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,\"cwd\",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,\"pmme\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"friction\",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,\"state\",{enumerable:!0,configurable:!0,writable:!0,value:m.Init}),Object.defineProperty(this,\"isDragging\",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,\"container\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"content\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"spinner\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"containerRect\",{enumerable:!0,configurable:!0,writable:!0,value:{width:0,height:0,innerWidth:0,innerHeight:0}}),Object.defineProperty(this,\"contentRect\",{enumerable:!0,configurable:!0,writable:!0,value:{top:0,right:0,bottom:0,left:0,fullWidth:0,fullHeight:0,fitWidth:0,fitHeight:0,width:0,height:0}}),Object.defineProperty(this,\"dragStart\",{enumerable:!0,configurable:!0,writable:!0,value:{x:0,y:0,top:0,left:0,time:0}}),Object.defineProperty(this,\"dragOffset\",{enumerable:!0,configurable:!0,writable:!0,value:{x:0,y:0,time:0}}),Object.defineProperty(this,\"current\",{enumerable:!0,configurable:!0,writable:!0,value:Object.assign({},C)}),Object.defineProperty(this,\"target\",{enumerable:!0,configurable:!0,writable:!0,value:Object.assign({},C)}),Object.defineProperty(this,\"velocity\",{enumerable:!0,configurable:!0,writable:!0,value:{a:0,b:0,c:0,d:0,e:0,f:0}}),Object.defineProperty(this,\"lockedAxis\",{enumerable:!0,configurable:!0,writable:!0,value:!1}),!t)throw new Error(\"Container Element Not Found\");this.container=t,this.initContent(),this.attachPlugins(Object.assign(Object.assign({},I.Plugins),i)),this.emit(\"attachPlugins\"),this.emit(\"init\");const o=this.content;if(o.addEventListener(\"load\",this.onLoad),o.addEventListener(\"error\",this.onError),this.isContentLoading){if(this.option(\"spinner\")){t.classList.add(this.cn(\"isLoading\"));const e=n(x);!t.contains(o)||o.parentElement instanceof HTMLPictureElement?this.spinner=t.appendChild(e):this.spinner=(null===(s=o.parentElement)||void 0===s?void 0:s.insertBefore(e,o))||null}this.emit(\"beforeLoad\")}else queueMicrotask((()=>{this.enable()}))}initContent(){const{container:t}=this,e=this.cn(L);let i=this.option(L)||t.querySelector(`.${e}`);if(i||(i=t.querySelector(\"img,picture\")||t.firstElementChild,i&&P(i,e)),i instanceof HTMLPictureElement&&(i=i.querySelector(\"img\")),!i)throw new Error(\"No content found\");this.content=i}onLoad(){const{spinner:t,container:e,state:i}=this;t&&(t.remove(),this.spinner=null),this.option(\"spinner\")&&e.classList.remove(this.cn(\"isLoading\")),this.emit(\"afterLoad\"),i===m.Init?this.enable():this.updateMetrics()}onError(){this.state!==m.Destroy&&(this.spinner&&(this.spinner.remove(),this.spinner=null),this.stop(),this.detachEvents(),this.state=m.Error,this.emit(\"error\"))}getNextScale(t){const{fullScale:e,targetScale:i,coverScale:n,maxScale:s,minScale:o}=this;let a=o;switch(t){case\"toggleMax\":a=i-o<.5*(s-o)?s:o;break;case\"toggleCover\":a=i-o<.5*(n-o)?n:o;break;case\"toggleZoom\":a=i-o<.5*(e-o)?e:o;break;case\"iterateZoom\":let t=[1,e,s].sort(((t,e)=>t-e)),r=t.findIndex((t=>t>i+1e-5));a=t[r]||1}return a}attachObserver(){var t;const e=()=>{const{container:t,containerRect:e}=this;return Math.abs(e.width-t.getBoundingClientRect().width)>.1||Math.abs(e.height-t.getBoundingClientRect().height)>.1};this.resizeObserver||void 0===window.ResizeObserver||(this.resizeObserver=new ResizeObserver((()=>{this.updateTimer||(e()?(this.onResize(),this.isMobile&&(this.updateTimer=setTimeout((()=>{e()&&this.onResize(),this.updateTimer=null}),500))):this.updateTimer&&(clearTimeout(this.updateTimer),this.updateTimer=null))}))),null===(t=this.resizeObserver)||void 0===t||t.observe(this.container)}detachObserver(){var t;null===(t=this.resizeObserver)||void 0===t||t.disconnect()}attachEvents(){const{container:t}=this;t.addEventListener(\"click\",this.onClick,{passive:!1,capture:!1}),t.addEventListener(\"wheel\",this.onWheel,{passive:!1}),this.pointerTracker=new l(t,{start:this.onPointerDown,move:this.onPointerMove,end:this.onPointerUp}),document.addEventListener(O,this.onMouseMove)}detachEvents(){var t;const{container:e}=this;e.removeEventListener(\"click\",this.onClick,{passive:!1,capture:!1}),e.removeEventListener(\"wheel\",this.onWheel,{passive:!1}),null===(t=this.pointerTracker)||void 0===t||t.stop(),this.pointerTracker=null,document.removeEventListener(O,this.onMouseMove),document.removeEventListener(\"keydown\",this.onKeydown,!0),this.clickTimer&&(clearTimeout(this.clickTimer),this.clickTimer=null),this.updateTimer&&(clearTimeout(this.updateTimer),this.updateTimer=null)}animate(){this.setTargetForce();const t=this.friction,e=this.option(\"maxVelocity\");for(const i of v)t?(this.velocity[i]*=1-t,e&&!this.isScaling&&(this.velocity[i]=Math.max(Math.min(this.velocity[i],e),-1*e)),this.current[i]+=this.velocity[i]):this.current[i]=this.target[i];this.setTransform(),this.setEdgeForce(),!this.isResting||this.isDragging?this.rAF=requestAnimationFrame((()=>this.animate())):this.stop(\"current\")}setTargetForce(){for(const t of v)\"e\"===t&&this.isBouncingX||\"f\"===t&&this.isBouncingY||(this.velocity[t]=(1/(1-this.friction)-1)*(this.target[t]-this.current[t]))}checkBounds(t=0,e=0){const{current:i}=this,n=i.e+t,s=i.f+e,o=this.getBounds(),{x:a,y:r}=o,l=a.min,c=a.max,h=r.min,d=r.max;let u=0,p=0;return l!==1/0&&nc&&(u=c-n),h!==1/0&&sd&&(p=d-s),Math.abs(u)<1e-4&&(u=0),Math.abs(p)<1e-4&&(p=0),Object.assign(Object.assign({},o),{xDiff:u,yDiff:p,inBounds:!u&&!p})}clampTargetBounds(){const{target:t}=this,{x:e,y:i}=this.getBounds();e.min!==1/0&&(t.e=Math.max(t.e,e.min)),e.max!==1/0&&(t.e=Math.min(t.e,e.max)),i.min!==1/0&&(t.f=Math.max(t.f,i.min)),i.max!==1/0&&(t.f=Math.min(t.f,i.max))}calculateContentDim(t=this.current){const{content:e,contentRect:i}=this,{fitWidth:n,fitHeight:s,fullWidth:o,fullHeight:a}=i;let r=o,l=a;if(this.option(\"zoom\")||0!==this.angle){const i=!(e instanceof HTMLImageElement)&&(\"none\"===window.getComputedStyle(e).maxWidth||\"none\"===window.getComputedStyle(e).maxHeight),c=i?o:n,h=i?a:s,d=this.getMatrix(t),u=new DOMPoint(0,0).matrixTransform(d),p=new DOMPoint(0+c,0).matrixTransform(d),f=new DOMPoint(0+c,0+h).matrixTransform(d),g=new DOMPoint(0,0+h).matrixTransform(d),m=Math.abs(f.x-u.x),v=Math.abs(f.y-u.y),b=Math.abs(g.x-p.x),y=Math.abs(g.y-p.y);r=Math.max(m,b),l=Math.max(v,y)}return{contentWidth:r,contentHeight:l}}setEdgeForce(){if(this.ignoreBounds||this.isDragging||this.panMode===O||this.targetScale{const t=window.getSelection();return t&&\"Range\"===t.type})()&&!i.closest(\"button\"))return;const n=i.closest(\"[data-panzoom-action]\"),s=i.closest(\"[data-panzoom-change]\"),o=n||s,a=o&&E(o)?o.dataset:null;if(a){const e=a.panzoomChange,i=a.panzoomAction;if((e||i)&&t.preventDefault(),e){let t={};try{t=JSON.parse(e)}catch(t){console&&console.warn(\"The given data was not valid JSON\")}return void this.applyChange(t)}if(i)return void(this[i]&&this[i]())}if(Math.abs(this.dragOffset.x)>3||Math.abs(this.dragOffset.y)>3)return t.preventDefault(),void t.stopPropagation();if(i.closest(\"[data-fancybox]\"))return;const r=this.content.getBoundingClientRect(),l=this.dragStart;if(l.time&&!this.canZoomOut()&&(Math.abs(r.x-l.x)>2||Math.abs(r.y-l.y)>2))return;this.dragStart.time=0;const c=e=>{this.option(\"zoom\",t)&&e&&\"string\"==typeof e&&/(iterateZoom)|(toggle(Zoom|Full|Cover|Max)|(zoomTo(Fit|Cover|Max)))/.test(e)&&\"function\"==typeof this[e]&&(t.preventDefault(),this[e]({event:t}))},h=this.option(\"click\",t),d=this.option(\"dblClick\",t);d?(this.clicks++,1==this.clicks&&(this.clickTimer=setTimeout((()=>{1===this.clicks?(this.emit(\"click\",t),!t.defaultPrevented&&h&&c(h)):(this.emit(\"dblClick\",t),t.defaultPrevented||c(d)),this.clicks=0,this.clickTimer=null}),350))):(this.emit(\"click\",t),!t.defaultPrevented&&h&&c(h))}addTrackingPoint(t){const e=this.trackingPoints.filter((t=>t.time>Date.now()-100));e.push(t),this.trackingPoints=e}onPointerDown(t,e,i){var n;if(!1===this.option(\"touch\",t))return!1;this.pwt=0,this.dragOffset={x:0,y:0,time:0},this.trackingPoints=[];const s=this.content.getBoundingClientRect();if(this.dragStart={x:s.x,y:s.y,top:s.top,left:s.left,time:Date.now()},this.clickTimer)return!1;if(this.panMode===O&&this.targetScale>1)return t.preventDefault(),t.stopPropagation(),!1;const o=t.composedPath()[0];if(!i.length){if([\"TEXTAREA\",\"OPTION\",\"INPUT\",\"SELECT\",\"VIDEO\",\"IFRAME\"].includes(o.nodeName)||o.closest(\"[contenteditable],[data-selectable],[data-draggable],[data-clickable],[data-panzoom-change],[data-panzoom-action]\"))return!1;null===(n=window.getSelection())||void 0===n||n.removeAllRanges()}if(\"mousedown\"===t.type)[\"A\",\"BUTTON\"].includes(o.nodeName)||t.preventDefault();else if(Math.abs(this.velocity.a)>.3)return!1;return this.target.e=this.current.e,this.target.f=this.current.f,this.stop(),this.isDragging||(this.isDragging=!0,this.addTrackingPoint(e),this.emit(\"touchStart\",t)),!0}onPointerMove(e,n,s){if(!1===this.option(\"touch\",e))return;if(!this.isDragging)return;if(n.length<2&&this.panOnlyZoomed&&t(this.targetScale)<=t(this.minScale))return;if(this.emit(\"touchMove\",e),e.defaultPrevented)return;this.addTrackingPoint(n[0]);const{content:o}=this,a=h(s[0],s[1]),r=h(n[0],n[1]);let l=0,d=0;if(n.length>1){const t=o.getBoundingClientRect();l=a.clientX-t.left-.5*t.width,d=a.clientY-t.top-.5*t.height}const u=c(s[0],s[1]),p=c(n[0],n[1]);let f=u?p/u:1,g=r.clientX-a.clientX,m=r.clientY-a.clientY;this.dragOffset.x+=g,this.dragOffset.y+=m,this.dragOffset.time=Date.now()-this.dragStart.time;let v=t(this.targetScale)===t(this.minScale)&&this.option(\"lockAxis\");if(v&&!this.lockedAxis)if(\"xy\"===v||\"y\"===v||\"touchmove\"===e.type){if(Math.abs(this.dragOffset.x)<6&&Math.abs(this.dragOffset.y)<6)return void e.preventDefault();const t=Math.abs(180*Math.atan2(this.dragOffset.y,this.dragOffset.x)/Math.PI);this.lockedAxis=t>45&&t<135?\"y\":\"x\",this.dragOffset.x=0,this.dragOffset.y=0,g=0,m=0}else this.lockedAxis=v;if(i(e.target,this.content)&&(v=\"x\",this.dragOffset.y=0),v&&\"xy\"!==v&&this.lockedAxis!==v&&t(this.targetScale)===t(this.minScale))return;e.cancelable&&e.preventDefault(),this.container.classList.add(this.cn(\"isDragging\"));const b=this.checkBounds(g,m);this.option(\"rubberband\")?(\"x\"!==this.isInfinite&&(b.xDiff>0&&g<0||b.xDiff<0&&g>0)&&(g*=Math.max(0,.5-Math.abs(.75/this.contentRect.fitWidth*b.xDiff))),\"y\"!==this.isInfinite&&(b.yDiff>0&&m<0||b.yDiff<0&&m>0)&&(m*=Math.max(0,.5-Math.abs(.75/this.contentRect.fitHeight*b.yDiff)))):(b.xDiff&&(g=0),b.yDiff&&(m=0));const y=this.targetScale,w=this.minScale,x=this.maxScale;y<.5*w&&(f=Math.max(f,w)),y>1.5*x&&(f=Math.min(f,x)),\"y\"===this.lockedAxis&&t(y)===t(w)&&(g=0),\"x\"===this.lockedAxis&&t(y)===t(w)&&(m=0),this.applyChange({originX:l,originY:d,panX:g,panY:m,scale:f,friction:this.option(\"dragFriction\"),ignoreBounds:!0})}onPointerUp(t,e,n){if(n.length)return this.dragOffset.x=0,this.dragOffset.y=0,void(this.trackingPoints=[]);this.container.classList.remove(this.cn(\"isDragging\")),this.isDragging&&(this.addTrackingPoint(e),this.panOnlyZoomed&&this.contentRect.width-this.contentRect.fitWidth<1&&this.contentRect.height-this.contentRect.fitHeight<1&&(this.trackingPoints=[]),i(t.target,this.content)&&\"y\"===this.lockedAxis&&(this.trackingPoints=[]),this.emit(\"touchEnd\",t),this.isDragging=!1,this.lockedAxis=!1,this.state!==m.Destroy&&(t.defaultPrevented||this.startDecelAnim()))}startDecelAnim(){var e;const i=this.isScaling;this.rAF&&(cancelAnimationFrame(this.rAF),this.rAF=null),this.isBouncingX=!1,this.isBouncingY=!1;for(const t of v)this.velocity[t]=0;this.target.e=this.current.e,this.target.f=this.current.f,S(this.container,\"is-scaling\"),S(this.container,\"is-animating\"),this.isTicking=!1;const{trackingPoints:n}=this,s=n[0],o=n[n.length-1];let a=0,r=0,l=0;o&&s&&(a=o.clientX-s.clientX,r=o.clientY-s.clientY,l=o.time-s.time);const c=(null===(e=window.visualViewport)||void 0===e?void 0:e.scale)||1;1!==c&&(a*=c,r*=c);let h=0,d=0,u=0,p=0,f=this.option(\"decelFriction\");const g=this.targetScale;if(l>0){u=Math.abs(a)>3?a/(l/30):0,p=Math.abs(r)>3?r/(l/30):0;const t=this.option(\"maxVelocity\");t&&(u=Math.max(Math.min(u,t),-1*t),p=Math.max(Math.min(p,t),-1*t))}u&&(h=u/(1/(1-f)-1)),p&&(d=p/(1/(1-f)-1)),(\"y\"===this.option(\"lockAxis\")||\"xy\"===this.option(\"lockAxis\")&&\"y\"===this.lockedAxis&&t(g)===this.minScale)&&(h=u=0),(\"x\"===this.option(\"lockAxis\")||\"xy\"===this.option(\"lockAxis\")&&\"x\"===this.lockedAxis&&t(g)===this.minScale)&&(d=p=0);const m=this.dragOffset.x,b=this.dragOffset.y,y=this.option(\"dragMinThreshold\")||0;Math.abs(m)this.maxScale+1e-5)||i&&!h&&!d)&&(f=.35),this.applyChange({panX:h,panY:d,friction:f}),this.emit(\"decel\",u,p,m,b)}onWheel(t){var e=[-t.deltaX||0,-t.deltaY||0,-t.detail||0].reduce((function(t,e){return Math.abs(e)>Math.abs(t)?e:t}));const i=Math.max(-1,Math.min(1,e));if(this.emit(\"wheel\",t,i),this.panMode===O)return;if(t.defaultPrevented)return;const n=this.option(\"wheel\");\"pan\"===n?(t.preventDefault(),this.panOnlyZoomed&&!this.canZoomOut()||this.applyChange({panX:2*-t.deltaX,panY:2*-t.deltaY,bounce:!1})):\"zoom\"===n&&!1!==this.option(\"zoom\")&&this.zoomWithWheel(t)}onMouseMove(t){this.panWithMouse(t)}onKeydown(t){\"Escape\"===t.key&&this.toggleFS()}onResize(){this.updateMetrics(),this.checkBounds().inBounds||this.requestTick()}setTransform(){this.emit(\"beforeTransform\");const{current:e,target:i,content:n,contentRect:s}=this,o=Object.assign({},C);for(const n of v){const s=\"e\"==n||\"f\"===n?M:T;o[n]=t(e[n],s),Math.abs(i[n]-e[n])<(\"e\"==n||\"f\"===n?.51:.001)&&(e[n]=i[n])}let{a:a,b:r,c:l,d:c,e:h,f:d}=o,u=`matrix(${a}, ${r}, ${l}, ${c}, ${h}, ${d})`,p=n.parentElement instanceof HTMLPictureElement?n.parentElement:n;if(this.option(\"transformParent\")&&(p=p.parentElement||p),p.style.transform===u)return;p.style.transform=u;const{contentWidth:f,contentHeight:g}=this.calculateContentDim();s.width=f,s.height=g,this.emit(\"afterTransform\")}updateMetrics(e=!1){var i;if(!this||this.state===m.Destroy)return;if(this.isContentLoading)return;const n=Math.max(1,(null===(i=window.visualViewport)||void 0===i?void 0:i.scale)||1),{container:s,content:o}=this,a=o instanceof HTMLImageElement,r=s.getBoundingClientRect(),l=getComputedStyle(this.container);let c=r.width*n,h=r.height*n;const d=parseFloat(l.paddingTop)+parseFloat(l.paddingBottom),u=c-(parseFloat(l.paddingLeft)+parseFloat(l.paddingRight)),p=h-d;this.containerRect={width:c,height:h,innerWidth:u,innerHeight:p};const f=parseFloat(o.dataset.width||\"\")||(t=>{let e=0;return e=t instanceof HTMLImageElement?t.naturalWidth:t instanceof SVGElement?t.width.baseVal.value:Math.max(t.offsetWidth,t.scrollWidth),e||0})(o),g=parseFloat(o.dataset.height||\"\")||(t=>{let e=0;return e=t instanceof HTMLImageElement?t.naturalHeight:t instanceof SVGElement?t.height.baseVal.value:Math.max(t.offsetHeight,t.scrollHeight),e||0})(o);let v=this.option(\"width\",f)||z,b=this.option(\"height\",g)||z;const y=v===z,w=b===z;\"number\"!=typeof v&&(v=f),\"number\"!=typeof b&&(b=g),y&&(v=f*(b/g)),w&&(b=g/(f/v));let x=o.parentElement instanceof HTMLPictureElement?o.parentElement:o;this.option(\"transformParent\")&&(x=x.parentElement||x);const E=x.getAttribute(\"style\")||\"\";x.style.setProperty(\"transform\",\"none\",\"important\"),a&&(x.style.width=\"\",x.style.height=\"\"),x.offsetHeight;const S=o.getBoundingClientRect();let P=S.width*n,C=S.height*n,T=P,M=C;P=Math.min(P,v),C=Math.min(C,b),a?({width:P,height:C}=((t,e,i,n)=>{const s=i/t,o=n/e,a=Math.min(s,o);return{width:t*=a,height:e*=a}})(v,b,P,C)):(P=Math.min(P,v),C=Math.min(C,b));let O=.5*(M-C),A=.5*(T-P);this.contentRect=Object.assign(Object.assign({},this.contentRect),{top:S.top-r.top+O,bottom:r.bottom-S.bottom+O,left:S.left-r.left+A,right:r.right-S.right+A,fitWidth:P,fitHeight:C,width:P,height:C,fullWidth:v,fullHeight:b}),x.style.cssText=E,a&&(x.style.width=`${P}px`,x.style.height=`${C}px`),this.setTransform(),!0!==e&&this.emit(\"refresh\"),this.ignoreBounds||(t(this.targetScale)this.maxScale?this.zoomTo(this.maxScale,{friction:0}):this.state===m.Init||this.checkBounds().inBounds||this.requestTick()),this.updateControls()}calculateBounds(){const{contentWidth:e,contentHeight:i}=this.calculateContentDim(this.target),{targetScale:n,lockedAxis:s}=this,{fitWidth:o,fitHeight:a}=this.contentRect;let r=0,l=0,c=0,h=0;const d=this.option(\"infinite\");if(!0===d||s&&d===s)r=-1/0,c=1/0,l=-1/0,h=1/0;else{let{containerRect:s,contentRect:d}=this,u=t(o*n,M),p=t(a*n,M),{innerWidth:f,innerHeight:g}=s;if(s.width===u&&(f=s.width),s.width===p&&(g=s.height),e>f){c=.5*(e-f),r=-1*c;let t=.5*(d.right-d.left);r+=t,c+=t}if(o>f&&eg){h=.5*(i-g),l=-1*h;let t=.5*(d.bottom-d.top);l+=t,h+=t}a>g&&it(s.fitWidth,1)||t(s.height,1)>t(s.fitHeight,1))&&(p=!0)),t(s.width*a,1)t(a),g=!f&&!p&&d&&t(l)i&&(n=i/t)}y=y.scale(n)}y=y.translate(-o,-a).translate(-f,-g).multiply(b),s&&(y=y.rotate(s)),l&&(y=y.scale(-1,1)),c&&(y=y.scale(1,-1));for(const e of v)\"e\"!==e&&\"f\"!==e&&(y[e]>this.minScale+1e-5||y[e].1||this.panMode===O||!1===d)&&!h&&this.clampTargetBounds(),u===m.Init?this.animate():this.isResting||(this.state=m.Panning,this.requestTick())}stop(t=!1){if(this.state===m.Init||this.state===m.Destroy)return;const e=this.isTicking;this.rAF&&(cancelAnimationFrame(this.rAF),this.rAF=null),this.isBouncingX=!1,this.isBouncingY=!1;for(const e of v)this.velocity[e]=0,\"current\"===t?this.current[e]=this.target[e]:\"target\"===t&&(this.target[e]=this.current[e]);this.setTransform(),S(this.container,\"is-scaling\"),S(this.container,\"is-animating\"),this.isTicking=!1,this.state=m.Ready,e&&(this.emit(\"endAnimation\"),this.updateControls())}requestTick(){this.isTicking||(this.emit(\"startAnimation\"),this.updateControls(),P(this.container,\"is-animating\"),this.isScaling&&P(this.container,\"is-scaling\")),this.isTicking=!0,this.rAF||(this.rAF=requestAnimationFrame((()=>this.animate())))}panWithMouse(e,i=this.option(\"mouseMoveFriction\")){if(this.pmme=e,this.panMode!==O||!e)return;if(t(this.targetScale)<=t(this.minScale))return;this.emit(\"mouseMove\",e);const{container:n,containerRect:s,contentRect:o}=this,a=s.width,r=s.height,l=n.getBoundingClientRect(),c=(e.clientX||0)-l.left,h=(e.clientY||0)-l.top;let{contentWidth:d,contentHeight:u}=this.calculateContentDim(this.target);const p=this.option(\"mouseMoveFactor\");p>1&&(d!==a&&(d*=p),u!==r&&(u*=p));let f=.5*(d-a)-c/a*100/100*(d-a);f+=.5*(o.right-o.left);let g=.5*(u-r)-h/r*100/100*(u-r);g+=.5*(o.bottom-o.top),this.applyChange({panX:f-this.target.e,panY:g-this.target.f,friction:i})}zoomWithWheel(e){if(this.state===m.Destroy||this.state===m.Init)return;const i=Date.now();if(i-this.pwt<45)return void e.preventDefault();this.pwt=i;var n=[-e.deltaX||0,-e.deltaY||0,-e.detail||0].reduce((function(t,e){return Math.abs(e)>Math.abs(t)?e:t}));const s=Math.max(-1,Math.min(1,n)),{targetScale:o,maxScale:a,minScale:r}=this;let l=o*(100+45*s)/100;t(l)t(a)&&t(o)>=t(a)?(this.cwd+=Math.abs(s),l=a):(this.cwd=0,l=Math.max(Math.min(l,a),r)),this.cwd>this.option(\"wheelLimit\")||(e.preventDefault(),t(l)!==t(o)&&this.zoomTo(l,{event:e}))}canZoomIn(){return this.option(\"zoom\")&&(t(this.contentRect.width,1)t(this.minScale)}zoomIn(t=1.25,e){this.zoomTo(this.targetScale*t,e)}zoomOut(t=.8,e){this.zoomTo(this.targetScale*t,e)}zoomToFit(t){this.zoomTo(\"fit\",t)}zoomToCover(t){this.zoomTo(\"cover\",t)}zoomToFull(t){this.zoomTo(\"full\",t)}zoomToMax(t){this.zoomTo(\"max\",t)}toggleZoom(t){this.zoomTo(this.getNextScale(\"toggleZoom\"),t)}toggleMax(t){this.zoomTo(this.getNextScale(\"toggleMax\"),t)}toggleCover(t){this.zoomTo(this.getNextScale(\"toggleCover\"),t)}iterateZoom(t){this.zoomTo(\"next\",t)}zoomTo(t=1,{friction:e=z,originX:i=z,originY:n=z,event:s}={}){if(this.isContentLoading||this.state===m.Destroy)return;const{targetScale:o,fullScale:a,maxScale:r,coverScale:l}=this;if(this.stop(),this.panMode===O&&(s=this.pmme||s),s||i===z||n===z){const t=this.content.getBoundingClientRect(),e=this.container.getBoundingClientRect(),o=s?s.clientX:e.left+.5*e.width,a=s?s.clientY:e.top+.5*e.height;i=o-t.left-.5*t.width,n=a-t.top-.5*t.height}let c=1;\"number\"==typeof t?c=t:\"full\"===t?c=a:\"cover\"===t?c=l:\"max\"===t?c=r:\"fit\"===t?c=1:\"next\"===t&&(c=this.getNextScale(\"iterateZoom\")),c=c/o||1,e=e===z?c>1?.15:.25:e,this.applyChange({scale:c,originX:i,originY:n,friction:e}),s&&this.panMode===O&&this.panWithMouse(s,e)}rotateCCW(){this.applyChange({angle:-90})}rotateCW(){this.applyChange({angle:90})}flipX(){this.applyChange({flipX:!0})}flipY(){this.applyChange({flipY:!0})}fitX(){this.stop(\"target\");const{containerRect:t,contentRect:e,target:i}=this;this.applyChange({panX:.5*t.width-(e.left+.5*e.fitWidth)-i.e,panY:.5*t.height-(e.top+.5*e.fitHeight)-i.f,scale:t.width/e.fitWidth/this.targetScale,originX:0,originY:0,ignoreBounds:!0})}fitY(){this.stop(\"target\");const{containerRect:t,contentRect:e,target:i}=this;this.applyChange({panX:.5*t.width-(e.left+.5*e.fitWidth)-i.e,panY:.5*t.innerHeight-(e.top+.5*e.fitHeight)-i.f,scale:t.height/e.fitHeight/this.targetScale,originX:0,originY:0,ignoreBounds:!0})}toggleFS(){const{container:t}=this,e=this.cn(\"inFullscreen\"),i=this.cn(\"htmlHasFullscreen\");t.classList.toggle(e);const n=t.classList.contains(e);n?(document.documentElement.classList.add(i),document.addEventListener(\"keydown\",this.onKeydown,!0)):(document.documentElement.classList.remove(i),document.removeEventListener(\"keydown\",this.onKeydown,!0)),this.updateMetrics(),this.emit(n?\"enterFS\":\"exitFS\")}getMatrix(t=this.current){const{a:e,b:i,c:n,d:s,e:o,f:a}=t;return new DOMMatrix([e,i,n,s,o,a])}reset(t){if(this.state!==m.Init&&this.state!==m.Destroy){this.stop(\"current\");for(const t of v)this.target[t]=C[t];this.target.a=this.minScale,this.target.d=this.minScale,this.clampTargetBounds(),this.isResting||(this.friction=void 0===t?this.option(\"friction\"):t,this.state=m.Panning,this.requestTick())}}destroy(){this.stop(),this.state=m.Destroy,this.detachEvents(),this.detachObserver();const{container:t,content:e}=this,i=this.option(\"classes\")||{};for(const e of Object.values(i))t.classList.remove(e+\"\");e&&(e.removeEventListener(\"load\",this.onLoad),e.removeEventListener(\"error\",this.onError)),this.detachPlugins()}}Object.defineProperty(I,\"defaults\",{enumerable:!0,configurable:!0,writable:!0,value:y}),Object.defineProperty(I,\"Plugins\",{enumerable:!0,configurable:!0,writable:!0,value:{}});const D=function(t,e){let i=!0;return(...n)=>{i&&(i=!1,t(...n),setTimeout((()=>{i=!0}),e))}},F=(t,e)=>{let i=[];return t.childNodes.forEach((t=>{t.nodeType!==Node.ELEMENT_NODE||e&&!t.matches(e)||i.push(t)})),i},j={viewport:null,track:null,enabled:!0,slides:[],axis:\"x\",transition:\"fade\",preload:1,slidesPerPage:\"auto\",initialPage:0,friction:.12,Panzoom:{decelFriction:.12},center:!0,infinite:!0,fill:!0,dragFree:!1,adaptiveHeight:!1,direction:\"ltr\",classes:{container:\"f-carousel\",viewport:\"f-carousel__viewport\",track:\"f-carousel__track\",slide:\"f-carousel__slide\",isLTR:\"is-ltr\",isRTL:\"is-rtl\",isHorizontal:\"is-horizontal\",isVertical:\"is-vertical\",inTransition:\"in-transition\",isSelected:\"is-selected\"},l10n:{NEXT:\"Next slide\",PREV:\"Previous slide\",GOTO:\"Go to slide #%d\"}};var B;!function(t){t[t.Init=0]=\"Init\",t[t.Ready=1]=\"Ready\",t[t.Destroy=2]=\"Destroy\"}(B||(B={}));const H=t=>{if(\"string\"==typeof t||t instanceof HTMLElement)t={html:t};else{const e=t.thumb;void 0!==e&&(\"string\"==typeof e&&(t.thumbSrc=e),e instanceof HTMLImageElement&&(t.thumbEl=e,t.thumbElSrc=e.src,t.thumbSrc=e.src),delete t.thumb)}return Object.assign({html:\"\",el:null,isDom:!1,class:\"\",customClass:\"\",index:-1,dim:0,gap:0,pos:0,transition:!1},t)},N=(t={})=>Object.assign({index:-1,slides:[],dim:0,pos:-1},t);class _ extends f{constructor(t,e){super(e),Object.defineProperty(this,\"instance\",{enumerable:!0,configurable:!0,writable:!0,value:t})}attach(){}detach(){}}const $={classes:{list:\"f-carousel__dots\",isDynamic:\"is-dynamic\",hasDots:\"has-dots\",dot:\"f-carousel__dot\",isBeforePrev:\"is-before-prev\",isPrev:\"is-prev\",isCurrent:\"is-current\",isNext:\"is-next\",isAfterNext:\"is-after-next\"},dotTpl:'',dynamicFrom:11,maxCount:1/0,minCount:2};class W extends _{constructor(){super(...arguments),Object.defineProperty(this,\"isDynamic\",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,\"list\",{enumerable:!0,configurable:!0,writable:!0,value:null})}onRefresh(){this.refresh()}build(){let t=this.list;if(!t){t=document.createElement(\"ul\"),P(t,this.cn(\"list\")),t.setAttribute(\"role\",\"tablist\");const e=this.instance.container;e.appendChild(t),P(e,this.cn(\"hasDots\")),this.list=t}return t}refresh(){var t;const e=this.instance.pages.length,i=Math.min(2,this.option(\"minCount\")),n=Math.max(2e3,this.option(\"maxCount\")),s=this.option(\"dynamicFrom\");if(en)return void this.cleanup();const a=\"number\"==typeof s&&e>5&&e>=s,r=!this.list||this.isDynamic!==a||this.list.children.length!==e;r&&this.cleanup();const l=this.build();if(o(l,this.cn(\"isDynamic\"),!!a),r)for(let t=0;t=e-1&&s.setAttribute(X,\"\")))}addBtn(t){var e;const i=this.instance,n=document.createElement(\"button\");n.setAttribute(\"tabindex\",\"0\"),n.setAttribute(\"title\",i.localize(`{{${t.toUpperCase()}}}`)),P(n,this.cn(\"button\")+\" \"+this.cn(t===q?\"isNext\":\"isPrev\"));const s=i.isRTL?t===q?Y:q:t;var o;return n.innerHTML=i.localize(this.option(`${s}Tpl`)),n.dataset[`carousel${o=t,o?o.match(\"^[a-z]\")?o.charAt(0).toUpperCase()+o.substring(1):o:\"\"}`]=\"true\",null===(e=this.container)||void 0===e||e.appendChild(n),n}build(){const t=this.instance.container,e=this.cn(\"container\");let{container:i,prev:n,next:s}=this;i||(i=t.querySelector(\".\"+e),this.isDom=!!i),i||(i=document.createElement(\"div\"),P(i,e),t.appendChild(i)),this.container=i,s||(s=i.querySelector(\"[data-carousel-next]\")),s||(s=this.addBtn(q)),this.next=s,n||(n=i.querySelector(\"[data-carousel-prev]\")),n||(n=this.addBtn(Y)),this.prev=n}cleanup(){this.isDom||(this.prev&&this.prev.remove(),this.next&&this.next.remove(),this.container&&this.container.remove()),this.prev=null,this.next=null,this.container=null,this.isDom=!1}attach(){this.instance.on([\"refresh\",\"change\"],this.onRefresh)}detach(){this.instance.off([\"refresh\",\"change\"],this.onRefresh),this.cleanup()}}Object.defineProperty(V,\"defaults\",{enumerable:!0,configurable:!0,writable:!0,value:{classes:{container:\"f-carousel__nav\",button:\"f-button\",isNext:\"is-next\",isPrev:\"is-prev\"},nextTpl:'',prevTpl:''}});class Z extends _{constructor(){super(...arguments),Object.defineProperty(this,\"selectedIndex\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"target\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"nav\",{enumerable:!0,configurable:!0,writable:!0,value:null})}addAsTargetFor(t){this.target=this.instance,this.nav=t,this.attachEvents()}addAsNavFor(t){this.nav=this.instance,this.target=t,this.attachEvents()}attachEvents(){const{nav:t,target:e}=this;t&&e&&(t.options.initialSlide=e.options.initialPage,t.state===B.Ready?this.onNavReady(t):t.on(\"ready\",this.onNavReady),e.state===B.Ready?this.onTargetReady(e):e.on(\"ready\",this.onTargetReady))}onNavReady(t){t.on(\"createSlide\",this.onNavCreateSlide),t.on(\"Panzoom.click\",this.onNavClick),t.on(\"Panzoom.touchEnd\",this.onNavTouch),this.onTargetChange()}onTargetReady(t){t.on(\"change\",this.onTargetChange),t.on(\"Panzoom.refresh\",this.onTargetChange),this.onTargetChange()}onNavClick(t,e,i){this.onNavTouch(t,t.panzoom,i)}onNavTouch(t,e,i){var n,s;if(Math.abs(e.dragOffset.x)>3||Math.abs(e.dragOffset.y)>3)return;const o=i.target,{nav:a,target:r}=this;if(!a||!r||!o)return;const l=o.closest(\"[data-index]\");if(i.stopPropagation(),i.preventDefault(),!l)return;const c=parseInt(l.dataset.index||\"\",10)||0,h=r.getPageForSlide(c),d=a.getPageForSlide(c);a.slideTo(d),r.slideTo(h,{friction:(null===(s=null===(n=this.nav)||void 0===n?void 0:n.plugins)||void 0===s?void 0:s.Sync.option(\"friction\"))||0}),this.markSelectedSlide(c)}onNavCreateSlide(t,e){e.index===this.selectedIndex&&this.markSelectedSlide(e.index)}onTargetChange(){var t,e;const{target:i,nav:n}=this;if(!i||!n)return;if(n.state!==B.Ready||i.state!==B.Ready)return;const s=null===(e=null===(t=i.pages[i.page])||void 0===t?void 0:t.slides[0])||void 0===e?void 0:e.index,o=n.getPageForSlide(s);this.markSelectedSlide(s),n.slideTo(o,null===n.prevPage&&null===i.prevPage?{friction:0}:void 0)}markSelectedSlide(t){const e=this.nav;e&&e.state===B.Ready&&(this.selectedIndex=t,[...e.slides].map((e=>{e.el&&e.el.classList[e.index===t?\"add\":\"remove\"](\"is-nav-selected\")})))}attach(){const t=this;let e=t.options.target,i=t.options.nav;e?t.addAsNavFor(e):i&&t.addAsTargetFor(i)}detach(){const t=this,e=t.nav,i=t.target;e&&(e.off(\"ready\",t.onNavReady),e.off(\"createSlide\",t.onNavCreateSlide),e.off(\"Panzoom.click\",t.onNavClick),e.off(\"Panzoom.touchEnd\",t.onNavTouch)),t.nav=null,i&&(i.off(\"ready\",t.onTargetReady),i.off(\"refresh\",t.onTargetChange),i.off(\"change\",t.onTargetChange)),t.target=null}}Object.defineProperty(Z,\"defaults\",{enumerable:!0,configurable:!0,writable:!0,value:{friction:.35}});const U={Navigation:V,Dots:W,Sync:Z},G=\"animationend\",K=\"isSelected\",J=\"slide\";class Q extends g{get axis(){return this.isHorizontal?\"e\":\"f\"}get isEnabled(){return this.state===B.Ready}get isInfinite(){let t=!1;const{contentDim:e,viewportDim:i,pages:n,slides:s}=this,o=s[0];return n.length>=2&&o&&e+o.dim>=i&&(t=this.option(\"infinite\")),t}get isRTL(){return\"rtl\"===this.option(\"direction\")}get isHorizontal(){return\"x\"===this.option(\"axis\")}constructor(t,e={},i={}){if(super(),Object.defineProperty(this,\"bp\",{enumerable:!0,configurable:!0,writable:!0,value:\"\"}),Object.defineProperty(this,\"lp\",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,\"userOptions\",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,\"userPlugins\",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,\"state\",{enumerable:!0,configurable:!0,writable:!0,value:B.Init}),Object.defineProperty(this,\"page\",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,\"prevPage\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"container\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,\"viewport\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"track\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"slides\",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,\"pages\",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,\"panzoom\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"inTransition\",{enumerable:!0,configurable:!0,writable:!0,value:new Set}),Object.defineProperty(this,\"contentDim\",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,\"viewportDim\",{enumerable:!0,configurable:!0,writable:!0,value:0}),\"string\"==typeof t&&(t=document.querySelector(t)),!t||!E(t))throw new Error(\"No Element found\");this.container=t,this.slideNext=D(this.slideNext.bind(this),150),this.slidePrev=D(this.slidePrev.bind(this),150),this.userOptions=e,this.userPlugins=i,queueMicrotask((()=>{this.processOptions()}))}processOptions(){var t,e;const i=u({},Q.defaults,this.userOptions);let n=\"\";const s=i.breakpoints;if(s&&d(s))for(const[t,e]of Object.entries(s))window.matchMedia(t).matches&&d(e)&&(n+=t,u(i,e));n===this.bp&&this.state!==B.Init||(this.bp=n,this.state===B.Ready&&(i.initialSlide=(null===(e=null===(t=this.pages[this.page])||void 0===t?void 0:t.slides[0])||void 0===e?void 0:e.index)||0),this.state!==B.Init&&this.destroy(),super.setOptions(i),!1===this.option(\"enabled\")?this.attachEvents():setTimeout((()=>{this.init()}),0))}init(){this.state=B.Init,this.emit(\"init\"),this.attachPlugins(Object.assign(Object.assign({},Q.Plugins),this.userPlugins)),this.emit(\"attachPlugins\"),this.initLayout(),this.initSlides(),this.updateMetrics(),this.setInitialPosition(),this.initPanzoom(),this.attachEvents(),this.state=B.Ready,this.emit(\"ready\")}initLayout(){const{container:t}=this,e=this.option(\"classes\");P(t,this.cn(\"container\")),o(t,e.isLTR,!this.isRTL),o(t,e.isRTL,this.isRTL),o(t,e.isVertical,!this.isHorizontal),o(t,e.isHorizontal,this.isHorizontal);let i=this.option(\"viewport\")||t.querySelector(`.${e.viewport}`);i||(i=document.createElement(\"div\"),P(i,e.viewport),i.append(...F(t,`.${e.slide}`)),t.prepend(i)),i.addEventListener(\"scroll\",this.onScroll);let n=this.option(\"track\")||t.querySelector(`.${e.track}`);n||(n=document.createElement(\"div\"),P(n,e.track),n.append(...Array.from(i.childNodes))),n.setAttribute(\"aria-live\",\"polite\"),i.contains(n)||i.prepend(n),this.viewport=i,this.track=n,this.emit(\"initLayout\")}initSlides(){const{track:t}=this;if(!t)return;const e=[...this.slides],i=[];[...F(t,`.${this.cn(J)}`)].forEach((t=>{if(E(t)){const e=H({el:t,isDom:!0,index:this.slides.length});i.push(e)}}));for(let t of[...this.option(\"slides\",[])||[],...e])i.push(H(t));this.slides=i;for(let t=0;t!(this.pages.length<2&&!t.options.infinite),bounds:()=>this.getBounds(),maxVelocity:t=>Math.abs(t.target[this.axis]-t.current[this.axis])<2*this.viewportDim?100:0},t)),this.panzoom.on(\"*\",((t,e,...i)=>{this.emit(`Panzoom.${e}`,t,...i)})),this.panzoom.on(\"decel\",this.onDecel),this.panzoom.on(\"refresh\",this.onRefresh),this.panzoom.on(\"beforeTransform\",this.onBeforeTransform),this.panzoom.on(\"endAnimation\",this.onEndAnimation)}attachEvents(){const t=this.container;t&&(t.addEventListener(\"click\",this.onClick,{passive:!1,capture:!1}),t.addEventListener(\"slideTo\",this.onSlideTo)),window.addEventListener(\"resize\",this.onResize)}createPages(){let t=[];const{contentDim:e,viewportDim:i}=this;let n=this.option(\"slidesPerPage\");n=(\"auto\"===n||e<=i)&&!1!==this.option(\"fill\")?1/0:parseFloat(n+\"\");let s=0,o=0,a=0;for(const e of this.slides)(!t.length||o+e.dim-i>.05||a>=n)&&(t.push(N()),s=t.length-1,o=0,a=0),t[s].slides.push(e),o+=e.dim+e.gap,a++;return t}processPages(){const e=this.pages,{contentDim:i,viewportDim:n,isInfinite:s}=this,o=this.option(\"center\"),a=this.option(\"fill\"),r=a&&o&&i>n&&!s;if(e.forEach(((t,e)=>{var s;t.index=e,t.pos=(null===(s=t.slides[0])||void 0===s?void 0:s.pos)||0,t.dim=0;for(const[e,i]of t.slides.entries())t.dim+=i.dim,e=i-.5*n?t.pos=i-n:o&&(t.pos+=-.5*(n-t.dim))})),e.forEach((e=>{a&&!s&&i>n&&(e.pos=Math.max(e.pos,0),e.pos=Math.min(e.pos,i-n)),e.pos=t(e.pos,1e3),e.dim=t(e.dim,1e3),Math.abs(e.pos)<=.1&&(e.pos=0)})),s)return e;const l=[];let c;return e.forEach((t=>{const e=Object.assign({},t);c&&e.pos===c.pos?(c.dim+=e.dim,c.slides=[...c.slides,...e.slides]):(e.index=l.length,c=e,l.push(e))})),l}getPageFromIndex(t=0){const e=this.pages.length;let i;return t=parseInt((t||0).toString())||0,i=this.isInfinite?(t%e+e)%e:Math.max(Math.min(t,e-1),0),i}getSlideMetrics(e){var i,n;const s=this.isHorizontal?\"width\":\"height\";let o=0,a=0,r=e.el;const l=!(!r||r.parentNode);if(r?o=parseFloat(r.dataset[s]||\"\")||0:(r=document.createElement(\"div\"),r.style.visibility=\"hidden\",(this.track||document.body).prepend(r)),P(r,this.cn(J)+\" \"+e.class+\" \"+e.customClass),o)r.style[s]=`${o}px`,r.style[\"width\"===s?\"height\":\"width\"]=\"\";else{l&&(this.track||document.body).prepend(r),o=r.getBoundingClientRect()[s]*Math.max(1,(null===(i=window.visualViewport)||void 0===i?void 0:i.scale)||1);let t=r[this.isHorizontal?\"offsetWidth\":\"offsetHeight\"];t-1>o&&(o=t)}const c=getComputedStyle(r);return\"content-box\"===c.boxSizing&&(this.isHorizontal?(o+=parseFloat(c.paddingLeft)||0,o+=parseFloat(c.paddingRight)||0):(o+=parseFloat(c.paddingTop)||0,o+=parseFloat(c.paddingBottom)||0)),a=parseFloat(c[this.isHorizontal?\"marginRight\":\"marginBottom\"])||0,l?null===(n=r.parentElement)||void 0===n||n.removeChild(r):e.el||r.remove(),{dim:t(o,1e3),gap:t(a,1e3)}}getBounds(){const{isInfinite:t,isRTL:e,isHorizontal:i,pages:n}=this;let s={min:0,max:0};if(t)s={min:-1/0,max:1/0};else if(n.length){const t=n[0].pos,o=n[n.length-1].pos;s=e&&i?{min:t,max:o}:{min:-1*o,max:-1*t}}return{x:i?s:{min:0,max:0},y:i?{min:0,max:0}:s}}repositionSlides(){let e,{isHorizontal:i,isRTL:n,isInfinite:s,viewport:o,viewportDim:a,contentDim:r,page:l,pages:c,slides:h,panzoom:d}=this,u=0,p=0,f=0,g=0;d?g=-1*d.current[this.axis]:c[l]&&(g=c[l].pos||0),e=i?n?\"right\":\"left\":\"top\",n&&i&&(g*=-1);for(const i of h){const n=i.el;n?(\"top\"===e?(n.style.right=\"\",n.style.left=\"\"):n.style.top=\"\",i.index!==u?n.style[e]=0===p?\"\":`${t(p,1e3)}px`:n.style[e]=\"\",f+=i.dim+i.gap,u++):p+=i.dim+i.gap}if(s&&f&&o){let n=getComputedStyle(o),s=\"padding\",l=i?\"Right\":\"Bottom\",c=parseFloat(n[s+(i?\"Left\":\"Top\")]);g-=c,a+=c,a+=parseFloat(n[s+l]);for(const i of h)i.el&&(t(i.pos)t(r-a)&&(i.el.style[e]=`${t(p+f,1e3)}px`),t(i.pos+i.gap)>=t(r-a)&&t(i.pos)>t(g+a)&&t(g)1&&(m=c[b[0]],v=c[b[1]]),m&&v){let i=0;for(const n of h)n.el?this.inTransition.has(n.index)&&m.slides.indexOf(n)<0&&(n.el.style[e]=`${t(i+(m.pos-v.pos),1e3)}px`):i+=n.dim+n.gap}}createSlideEl(t){const{track:e,slides:i}=this;if(!e||!t)return;if(t.el&&t.el.parentNode)return;const n=t.el||document.createElement(\"div\");P(n,this.cn(J)),P(n,t.class),P(n,t.customClass);const s=t.html;s&&(s instanceof HTMLElement?n.appendChild(s):n.innerHTML=t.html+\"\");const o=[];i.forEach(((t,e)=>{t.el&&o.push(e)}));const a=t.index;let r=null;if(o.length){r=i[o.reduce(((t,e)=>Math.abs(e-a)1)return!1;let h=t>a?1:-1;this.isInfinite&&(0===a&&t===r.length-1&&(h=-1),a===r.length-1&&0===t&&(h=1));const d=r[c].pos*(this.isRTL?1:-1);if(a===c&&Math.abs(d-l.target[this.axis])<1)return!1;this.clearTransitions();const u=l.isResting;P(this.container,this.cn(\"inTransition\"));const p=(null===(s=r[a])||void 0===s?void 0:s.slides[0])||null,f=(null===(o=r[c])||void 0===o?void 0:o.slides[0])||null;this.inTransition.add(f.index),this.createSlideEl(f);let g=p.el,m=f.el;u||e===J||(e=\"fadeFast\",g=null);const v=this.isRTL?\"next\":\"prev\",b=this.isRTL?\"prev\":\"next\";return g&&(this.inTransition.add(p.index),p.transition=e,g.addEventListener(G,this.onAnimationEnd),g.classList.add(`f-${e}Out`,`to-${h>0?b:v}`)),m&&(f.transition=e,m.addEventListener(G,this.onAnimationEnd),m.classList.add(`f-${e}In`,`from-${h>0?v:b}`)),l.current[this.axis]=d,l.target[this.axis]=d,l.requestTick(),this.onChange(c),!0}manageSlideVisiblity(){const t=new Set,e=new Set,i=this.getVisibleSlides(parseFloat(this.option(\"preload\",0)+\"\")||0);for(const n of this.slides)i.has(n)?t.add(n):e.add(n);for(const e of this.inTransition)t.add(this.slides[e]);for(const e of t)this.createSlideEl(e),this.lazyLoadSlide(e);for(const i of e)t.has(i)||this.removeSlideEl(i);this.markSelectedSlides(),this.repositionSlides()}markSelectedSlides(){if(!this.pages[this.page]||!this.pages[this.page].slides)return;const t=\"aria-hidden\";let e=this.cn(K);if(e)for(const i of this.slides){const n=i.el;n&&(n.dataset.index=`${i.index}`,n.classList.contains(\"f-thumbs__slide\")?this.getVisibleSlides(0).has(i)?n.removeAttribute(t):n.setAttribute(t,\"true\"):this.pages[this.page].slides.includes(i)?(n.classList.contains(e)||(P(n,e),this.emit(\"selectSlide\",i)),n.removeAttribute(t)):(n.classList.contains(e)&&(S(n,e),this.emit(\"unselectSlide\",i)),n.setAttribute(t,\"true\")))}}flipInfiniteTrack(){const{axis:t,isHorizontal:e,isInfinite:i,isRTL:n,viewportDim:s,contentDim:o}=this,a=this.panzoom;if(!a||!i)return;let r=a.current[t],l=a.target[t]-r,c=0,h=.5*s;n&&e?(r<-h&&(c=-1,r+=o),r>o-h&&(c=1,r-=o)):(r>h&&(c=1,r-=o),r<-o+h&&(c=-1,r+=o)),c&&(a.current[t]=r,a.target[t]=r+l)}lazyLoadImg(t,e){const i=this,s=\"f-fadeIn\",o=\"is-preloading\";let a=!1,r=null;const l=()=>{a||(a=!0,r&&(r.remove(),r=null),S(e,o),e.complete&&(P(e,s),setTimeout((()=>{S(e,s)}),350)),this.option(\"adaptiveHeight\")&&t.el&&this.pages[this.page].slides.indexOf(t)>-1&&(i.updateMetrics(),i.setViewportHeight()),this.emit(\"load\",t))};P(e,o),e.src=e.dataset.lazySrcset||e.dataset.lazySrc||\"\",delete e.dataset.lazySrc,delete e.dataset.lazySrcset,e.addEventListener(\"error\",(()=>{l()})),e.addEventListener(\"load\",(()=>{l()})),setTimeout((()=>{const i=e.parentNode;i&&t.el&&(e.complete?l():a||(r=n(x),i.insertBefore(r,e)))}),300)}lazyLoadSlide(t){const e=t&&t.el;if(!e)return;const i=new Set;let n=Array.from(e.querySelectorAll(\"[data-lazy-src],[data-lazy-srcset]\"));e.dataset.lazySrc&&n.push(e),n.map((t=>{t instanceof HTMLImageElement?i.add(t):t instanceof HTMLElement&&t.dataset.lazySrc&&(t.style.backgroundImage=`url('${t.dataset.lazySrc}')`,delete t.dataset.lazySrc)}));for(const e of i)this.lazyLoadImg(t,e)}onAnimationEnd(t){var e;const i=t.target,n=i?parseInt(i.dataset.index||\"\",10)||0:-1,s=this.slides[n],o=t.animationName;if(!i||!s||!o)return;const a=!!this.inTransition.has(n)&&s.transition;a&&o.substring(0,a.length+2)===`f-${a}`&&this.inTransition.delete(n),this.inTransition.size||this.clearTransitions(),n===this.page&&(null===(e=this.panzoom)||void 0===e?void 0:e.isResting)&&this.emit(\"settle\")}onDecel(t,e=0,i=0,n=0,s=0){if(this.option(\"dragFree\"))return void this.setPageFromPosition();const{isRTL:o,isHorizontal:a,axis:r,pages:l}=this,c=l.length,h=Math.abs(Math.atan2(i,e)/(Math.PI/180));let d=0;if(d=h>45&&h<135?a?0:i:a?e:0,!c)return;let u=this.page,p=o&&a?1:-1;const f=t.current[r]*p;let{pageIndex:g}=this.getPageFromPosition(f);Math.abs(d)>5?(l[u].dim=t&&(this.page+=d.length),this.updateMetrics(),a){const e=(null===(s=this.pages[this.page])||void 0===s?void 0:s.pos)||0,i=(null===(o=this.pages[this.page])||void 0===o?void 0:o.dim)||0,n=this.pages.length||1,h=this.isRTL?l-i:i-l,d=this.isRTL?r-e:e-r;c&&1===n?(t<=this.page&&(a.current[this.axis]-=h,a.target[this.axis]-=h),a.panTo({[this.isHorizontal?\"x\":\"y\"]:-1*e})):d&&t<=this.page&&(a.target[this.axis]-=d,a.current[this.axis]-=d,a.requestTick())}for(const t of d)this.emit(\"initSlide\",t,t.index)}prependSlide(t){this.addSlide(0,t)}appendSlide(t){this.addSlide(this.slides.length,t)}removeSlide(t){const e=this.slides.length;t=(t%e+e)%e;const i=this.slides[t];if(i){this.removeSlideEl(i,!0),this.slides.splice(t,1);for(let t=0;tthis.page?-1:1;let l=-1*o.current.e,c=t((l-r.pos)/(1*r.dim),1e3),h=c,d=c;this.isInfinite&&!0!==n&&(h=t((l-r.pos+a)/(1*r.dim),1e3),d=t((l-r.pos-a)/(1*r.dim),1e3));let u=[c,h,d].reduce((function(t,e){return Math.abs(e)1?1:u<-1?-1:u}setViewportHeight(){const{page:t,pages:e,viewport:i,isHorizontal:n}=this;if(!i||!e[t])return;let s=0;n&&this.track&&(this.track.style.height=\"auto\",e[t].slides.forEach((t=>{t.el&&(s=Math.max(s,t.el.offsetHeight))}))),i.style.height=s?`${s}px`:\"\"}getPageForSlide(t){for(const e of this.pages)for(const i of e.slides)if(i.index===t)return e.index;return-1}getVisibleSlides(t=0){var e;const i=new Set;let{panzoom:n,contentDim:s,viewportDim:o,pages:a,page:r}=this;if(o){s=s+(null===(e=this.slides[this.slides.length-1])||void 0===e?void 0:e.gap)||0;let l=0;l=n&&n.state!==m.Init&&n.state!==m.Destroy?-1*n.current[this.axis]:a[r]&&a[r].pos||0,this.isInfinite&&(l-=Math.floor(l/s)*s),this.isRTL&&this.isHorizontal&&(l*=-1);const c=l-o*t,h=l+o*(t+1),d=this.isInfinite?[-1,0,1]:[0];for(const t of this.slides)for(const e of d){const n=t.pos+e*s,o=n+t.dim+t.gap;nc&&i.add(t)}}return i}getPageFromPosition(t){const{viewportDim:e,contentDim:i,slides:n,pages:s,panzoom:o}=this,a=s.length,r=n.length,l=n[0],c=n[r-1],h=this.option(\"center\");let d=0,u=0,p=0,f=void 0===t?-1*((null==o?void 0:o.target[this.axis])||0):t;h&&(f+=.5*e),this.isInfinite?(fc.pos+c.dim+.5*c.gap&&(f-=i,p=1)):f=Math.max(l.pos||0,Math.min(f,c.pos));let g=c,m=n.find((t=>{const e=t.pos-.5*g.gap,i=t.pos+t.dim+.5*t.gap;return g=t,f>=e&&f{this.removeSlideEl(t)})),this.detachPlugins(),e&&(e.removeEventListener(\"scroll\",this.onScroll),e.offsetParent&&i&&i.offsetParent&&e.replaceWith(...i.childNodes));for(const[e,i]of Object.entries(o))\"container\"!==e&&i&&t.classList.remove(i);this.track=null,this.viewport=null,this.page=0,this.slides=[];const a=this.events.get(\"ready\");this.events=new Map,a&&this.events.set(\"ready\",a)}}Object.defineProperty(Q,\"Panzoom\",{enumerable:!0,configurable:!0,writable:!0,value:I}),Object.defineProperty(Q,\"defaults\",{enumerable:!0,configurable:!0,writable:!0,value:j}),Object.defineProperty(Q,\"Plugins\",{enumerable:!0,configurable:!0,writable:!0,value:U});const tt=function(t){if(!E(t))return 0;const e=window.scrollY,i=window.innerHeight,n=e+i,s=t.getBoundingClientRect(),o=s.y+e,a=s.height,r=o+a;if(e>r||nr)return 100;if(on)return 100;let l=a;on&&(l-=r-n);const c=l/i*100;return Math.round(c)},et=!(\"undefined\"==typeof window||!window.document||!window.document.createElement);let it;const nt=[\"a[href]\",\"area[href]\",'input:not([disabled]):not([type=\"hidden\"]):not([aria-hidden])',\"select:not([disabled]):not([aria-hidden])\",\"textarea:not([disabled]):not([aria-hidden])\",\"button:not([disabled]):not([aria-hidden]):not(.fancybox-focus-guard)\",\"iframe\",\"object\",\"embed\",\"video\",\"audio\",\"[contenteditable]\",'[tabindex]:not([tabindex^=\"-\"]):not([disabled]):not([aria-hidden])'].join(\",\"),st=t=>{if(t&&et){void 0===it&&document.createElement(\"div\").focus({get preventScroll(){return it=!0,!1}});try{if(it)t.focus({preventScroll:!0});else{const e=window.scrollY||document.body.scrollTop,i=window.scrollX||document.body.scrollLeft;t.focus(),document.body.scrollTo({top:e,left:i,behavior:\"auto\"})}}catch(t){}}},ot=()=>{const t=document;let e,i=\"\",n=\"\",s=\"\";return t.fullscreenEnabled?(i=\"requestFullscreen\",n=\"exitFullscreen\",s=\"fullscreenElement\"):t.webkitFullscreenEnabled&&(i=\"webkitRequestFullscreen\",n=\"webkitExitFullscreen\",s=\"webkitFullscreenElement\"),i&&(e={request:function(e=t.documentElement){return\"webkitRequestFullscreen\"===i?e[i](Element.ALLOW_KEYBOARD_INPUT):e[i]()},exit:function(){return t[s]&&t[n]()},isFullscreen:function(){return t[s]}}),e},at={animated:!0,autoFocus:!0,backdropClick:\"close\",Carousel:{classes:{container:\"fancybox__carousel\",viewport:\"fancybox__viewport\",track:\"fancybox__track\",slide:\"fancybox__slide\"}},closeButton:\"auto\",closeExisting:!1,commonCaption:!1,compact:()=>window.matchMedia(\"(max-width: 578px), (max-height: 578px)\").matches,contentClick:\"toggleZoom\",contentDblClick:!1,defaultType:\"image\",defaultDisplay:\"flex\",dragToClose:!0,Fullscreen:{autoStart:!1},groupAll:!1,groupAttr:\"data-fancybox\",hideClass:\"f-fadeOut\",hideScrollbar:!0,idle:3500,keyboard:{Escape:\"close\",Delete:\"close\",Backspace:\"close\",PageUp:\"next\",PageDown:\"prev\",ArrowUp:\"prev\",ArrowDown:\"next\",ArrowRight:\"next\",ArrowLeft:\"prev\"},l10n:Object.assign(Object.assign({},b),{CLOSE:\"Close\",NEXT:\"Next\",PREV:\"Previous\",MODAL:\"You can close this modal content with the ESC key\",ERROR:\"Something Went Wrong, Please Try Again Later\",IMAGE_ERROR:\"Image Not Found\",ELEMENT_NOT_FOUND:\"HTML Element Not Found\",AJAX_NOT_FOUND:\"Error Loading AJAX : Not Found\",AJAX_FORBIDDEN:\"Error Loading AJAX : Forbidden\",IFRAME_ERROR:\"Error Loading Page\",TOGGLE_ZOOM:\"Toggle zoom level\",TOGGLE_THUMBS:\"Toggle thumbnails\",TOGGLE_SLIDESHOW:\"Toggle slideshow\",TOGGLE_FULLSCREEN:\"Toggle full-screen mode\",DOWNLOAD:\"Download\"}),parentEl:null,placeFocusBack:!0,showClass:\"f-zoomInUp\",startIndex:0,tpl:{closeButton:'',main:'
\\n
\\n
\\n
\\n
'},trapFocus:!0,wheel:\"zoom\"};var rt,lt;!function(t){t[t.Init=0]=\"Init\",t[t.Ready=1]=\"Ready\",t[t.Closing=2]=\"Closing\",t[t.CustomClosing=3]=\"CustomClosing\",t[t.Destroy=4]=\"Destroy\"}(rt||(rt={})),function(t){t[t.Loading=0]=\"Loading\",t[t.Opening=1]=\"Opening\",t[t.Ready=2]=\"Ready\",t[t.Closing=3]=\"Closing\"}(lt||(lt={}));let ct=\"\",ht=!1,dt=!1,ut=null;const pt=()=>{let t=\"\",e=\"\";const i=Oe.getInstance();if(i){const n=i.carousel,s=i.getSlide();if(n&&s){let o=s.slug||void 0,a=s.triggerEl||void 0;e=o||(i.option(\"slug\")||\"\"),!e&&a&&a.dataset&&(e=a.dataset.fancybox||\"\"),e&&\"true\"!==e&&(t=\"#\"+e+(!o&&n.slides.length>1?\"-\"+(s.index+1):\"\"))}}return{hash:t,slug:e,index:1}},ft=()=>{const t=new URL(document.URL).hash,e=t.slice(1).split(\"-\"),i=e[e.length-1],n=i&&/^\\+?\\d+$/.test(i)&&parseInt(e.pop()||\"1\",10)||1;return{hash:t,slug:e.join(\"-\"),index:n}},gt=()=>{const{slug:t,index:e}=ft();if(!t)return;let i=document.querySelector(`[data-slug=\"${t}\"]`);if(i&&i.dispatchEvent(new CustomEvent(\"click\",{bubbles:!0,cancelable:!0})),Oe.getInstance())return;const n=document.querySelectorAll(`[data-fancybox=\"${t}\"]`);n.length&&(i=n[e-1],i&&i.dispatchEvent(new CustomEvent(\"click\",{bubbles:!0,cancelable:!0})))},mt=()=>{if(!1===Oe.defaults.Hash)return;const t=Oe.getInstance();if(!1===(null==t?void 0:t.options.Hash))return;const{slug:e,index:i}=ft(),{slug:n}=pt();t&&(e===n?t.jumpTo(i-1):(ht=!0,t.close())),gt()},vt=()=>{ut&&clearTimeout(ut),queueMicrotask((()=>{mt()}))},bt=()=>{window.addEventListener(\"hashchange\",vt,!1),setTimeout((()=>{mt()}),500)};et&&(/complete|interactive|loaded/.test(document.readyState)?bt():document.addEventListener(\"DOMContentLoaded\",bt));const yt=\"is-zooming-in\";class wt extends _{onCreateSlide(t,e,i){const n=this.instance.optionFor(i,\"src\")||\"\";i.el&&\"image\"===i.type&&\"string\"==typeof n&&this.setImage(i,n)}onRemoveSlide(t,e,i){i.panzoom&&i.panzoom.destroy(),i.panzoom=void 0,i.imageEl=void 0}onChange(t,e,i,n){S(this.instance.container,yt);for(const t of e.slides){const e=t.panzoom;e&&t.index!==i&&e.reset(.35)}}onClose(){var t;const e=this.instance,i=e.container,n=e.getSlide();if(!i||!i.parentElement||!n)return;const{el:s,contentEl:o,panzoom:a,thumbElSrc:r}=n;if(!s||!r||!o||!a||a.isContentLoading||a.state===m.Init||a.state===m.Destroy)return;a.updateMetrics();let l=this.getZoomInfo(n);if(!l)return;this.instance.state=rt.CustomClosing,i.classList.remove(yt),i.classList.add(\"is-zooming-out\"),o.style.backgroundImage=`url('${r}')`;const c=i.getBoundingClientRect();1===((null===(t=window.visualViewport)||void 0===t?void 0:t.scale)||1)&&Object.assign(i.style,{position:\"absolute\",top:`${i.offsetTop+window.scrollY}px`,left:`${i.offsetLeft+window.scrollX}px`,bottom:\"auto\",right:\"auto\",width:`${c.width}px`,height:`${c.height}px`,overflow:\"hidden\"});const{x:h,y:d,scale:u,opacity:p}=l;if(p){const t=((t,e,i,n)=>{const s=e-t,o=n-i;return e=>i+((e-t)/s*o||0)})(a.scale,u,1,0);a.on(\"afterTransform\",(()=>{o.style.opacity=t(a.scale)+\"\"}))}a.on(\"endAnimation\",(()=>{e.destroy()})),a.target.a=u,a.target.b=0,a.target.c=0,a.target.d=u,a.panTo({x:h,y:d,scale:u,friction:p?.2:.33,ignoreBounds:!0}),a.isResting&&e.destroy()}setImage(t,e){const i=this.instance;t.src=e,this.process(t,e).then((e=>{const{contentEl:n,imageEl:s,thumbElSrc:o,el:a}=t;if(i.isClosing()||!n||!s)return;n.offsetHeight;const r=!!i.isOpeningSlide(t)&&this.getZoomInfo(t);if(this.option(\"protected\")&&a){a.addEventListener(\"contextmenu\",(t=>{t.preventDefault()}));const t=document.createElement(\"div\");P(t,\"fancybox-protected\"),n.appendChild(t)}if(o&&r){const s=e.contentRect,a=Math.max(s.fullWidth,s.fullHeight);let c=null;!r.opacity&&a>1200&&(c=document.createElement(\"img\"),P(c,\"fancybox-ghost\"),c.src=o,n.appendChild(c));const h=()=>{c&&(P(c,\"f-fadeFastOut\"),setTimeout((()=>{c&&(c.remove(),c=null)}),200))};(l=o,new Promise(((t,e)=>{const i=new Image;i.onload=t,i.onerror=e,i.src=l}))).then((()=>{i.hideLoading(t),t.state=lt.Opening,this.instance.emit(\"reveal\",t),this.zoomIn(t).then((()=>{h(),this.instance.done(t)}),(()=>{})),c&&setTimeout((()=>{h()}),a>2500?800:200)}),(()=>{i.hideLoading(t),i.revealContent(t)}))}else{const n=this.optionFor(t,\"initialSize\"),s=this.optionFor(t,\"zoom\"),o={event:i.prevMouseMoveEvent||i.options.event,friction:s?.12:0};let a=i.optionFor(t,\"showClass\")||void 0,r=!0;i.isOpeningSlide(t)&&(\"full\"===n?e.zoomToFull(o):\"cover\"===n?e.zoomToCover(o):\"max\"===n?e.zoomToMax(o):r=!1,e.stop(\"current\")),r&&a&&(a=e.isDragging?\"f-fadeIn\":\"\"),i.hideLoading(t),i.revealContent(t,a)}var l}),(()=>{i.setError(t,\"{{IMAGE_ERROR}}\")}))}process(t,e){return new Promise(((i,s)=>{var o;const a=this.instance,r=t.el;a.clearContent(t),a.showLoading(t);let l=this.optionFor(t,\"content\");if(\"string\"==typeof l&&(l=n(l)),!l||!E(l)){if(l=document.createElement(\"img\"),l instanceof HTMLImageElement){let i=\"\",n=t.caption;i=\"string\"==typeof n&&n?n.replace(/<[^>]+>/gi,\"\").substring(0,1e3):`Image ${t.index+1} of ${(null===(o=a.carousel)||void 0===o?void 0:o.pages.length)||1}`,l.src=e||\"\",l.alt=i,l.draggable=!1,t.srcset&&l.setAttribute(\"srcset\",t.srcset),this.instance.isOpeningSlide(t)&&(l.fetchPriority=\"high\")}t.sizes&&l.setAttribute(\"sizes\",t.sizes)}P(l,\"fancybox-image\"),t.imageEl=l,a.setContent(t,l,!1);t.panzoom=new I(r,u({transformParent:!0},this.option(\"Panzoom\")||{},{content:l,width:(e,i)=>a.optionFor(t,\"width\",\"auto\",i)||\"auto\",height:(e,i)=>a.optionFor(t,\"height\",\"auto\",i)||\"auto\",wheel:()=>{const t=a.option(\"wheel\");return(\"zoom\"===t||\"pan\"==t)&&t},click:(e,i)=>{var n,s;if(a.isCompact||a.isClosing())return!1;if(t.index!==(null===(n=a.getSlide())||void 0===n?void 0:n.index))return!1;if(i){const t=i.composedPath()[0];if([\"A\",\"BUTTON\",\"TEXTAREA\",\"OPTION\",\"INPUT\",\"SELECT\",\"VIDEO\"].includes(t.nodeName))return!1}let o=!i||i.target&&(null===(s=t.contentEl)||void 0===s?void 0:s.contains(i.target));return a.option(o?\"contentClick\":\"backdropClick\")||!1},dblClick:()=>a.isCompact?\"toggleZoom\":a.option(\"contentDblClick\")||!1,spinner:!1,panOnlyZoomed:!0,wheelLimit:1/0,on:{ready:t=>{i(t)},error:()=>{s()},destroy:()=>{s()}}}))}))}zoomIn(t){return new Promise(((e,i)=>{const n=this.instance,s=n.container,{panzoom:o,contentEl:a,el:r}=t;o&&o.updateMetrics();const l=this.getZoomInfo(t);if(!(l&&r&&a&&o&&s))return void i();const{x:c,y:h,scale:d,opacity:u}=l,p=()=>{t.state!==lt.Closing&&(u&&(a.style.opacity=Math.max(Math.min(1,1-(1-o.scale)/(1-d)),0)+\"\"),o.scale>=1&&o.scale>o.targetScale-.1&&e(o))},f=t=>{(t.scale<.99||t.scale>1.01)&&!t.isDragging||(S(s,yt),a.style.opacity=\"\",t.off(\"endAnimation\",f),t.off(\"touchStart\",f),t.off(\"afterTransform\",p),e(t))};o.on(\"endAnimation\",f),o.on(\"touchStart\",f),o.on(\"afterTransform\",p),o.on([\"error\",\"destroy\"],(()=>{i()})),o.panTo({x:c,y:h,scale:d,friction:0,ignoreBounds:!0}),o.stop(\"current\");const g={event:\"mousemove\"===o.panMode?n.prevMouseMoveEvent||n.options.event:void 0},m=this.optionFor(t,\"initialSize\");P(s,yt),n.hideLoading(t),\"full\"===m?o.zoomToFull(g):\"cover\"===m?o.zoomToCover(g):\"max\"===m?o.zoomToMax(g):o.reset(.172)}))}getZoomInfo(t){const{el:e,imageEl:i,thumbEl:n,panzoom:s}=t,o=this.instance,a=o.container;if(!e||!i||!n||!s||tt(n)<3||!this.optionFor(t,\"zoom\")||!a||o.state===rt.Destroy)return!1;if(\"0\"===getComputedStyle(a).getPropertyValue(\"--f-images-zoom\"))return!1;const r=window.visualViewport||null;if(1!==(r?r.scale:1))return!1;let{top:l,left:c,width:h,height:d}=n.getBoundingClientRect(),{top:u,left:p,fitWidth:f,fitHeight:g}=s.contentRect;if(!(h&&d&&f&&g))return!1;const m=s.container.getBoundingClientRect();p+=m.left,u+=m.top;const v=-1*(p+.5*f-(c+.5*h)),b=-1*(u+.5*g-(l+.5*d)),y=h/f;let w=this.option(\"zoomOpacity\")||!1;return\"auto\"===w&&(w=Math.abs(h/d-f/g)>.1),{x:v,y:b,scale:y,opacity:w}}attach(){const t=this,e=t.instance;e.on(\"Carousel.change\",t.onChange),e.on(\"Carousel.createSlide\",t.onCreateSlide),e.on(\"Carousel.removeSlide\",t.onRemoveSlide),e.on(\"close\",t.onClose)}detach(){const t=this,e=t.instance;e.off(\"Carousel.change\",t.onChange),e.off(\"Carousel.createSlide\",t.onCreateSlide),e.off(\"Carousel.removeSlide\",t.onRemoveSlide),e.off(\"close\",t.onClose)}}Object.defineProperty(wt,\"defaults\",{enumerable:!0,configurable:!0,writable:!0,value:{initialSize:\"fit\",Panzoom:{maxScale:1},protected:!1,zoom:!0,zoomOpacity:\"auto\"}}),\"function\"==typeof SuppressedError&&SuppressedError;const xt=\"html\",Et=\"image\",St=\"map\",Pt=\"youtube\",Ct=\"vimeo\",Tt=\"html5video\",Mt=(t,e={})=>{const i=new URL(t),n=new URLSearchParams(i.search),s=new URLSearchParams;for(const[t,i]of[...n,...Object.entries(e)]){let e=i+\"\";if(\"t\"===t){let t=e.match(/((\\d*)m)?(\\d*)s?/);t&&s.set(\"start\",60*parseInt(t[2]||\"0\")+parseInt(t[3]||\"0\")+\"\")}else s.set(t,e)}let o=s+\"\",a=t.match(/#t=((.*)?\\d+s)/);return a&&(o+=`#t=${a[1]}`),o},Ot={ajax:null,autoSize:!0,iframeAttr:{allow:\"autoplay; fullscreen\",scrolling:\"auto\"},preload:!0,videoAutoplay:!0,videoRatio:16/9,videoTpl:'',videoFormat:\"\",vimeo:{byline:1,color:\"00adef\",controls:1,dnt:1,muted:0},youtube:{controls:1,enablejsapi:1,nocookie:1,rel:0,fs:1}},At=[\"image\",\"html\",\"ajax\",\"inline\",\"clone\",\"iframe\",\"map\",\"pdf\",\"html5video\",\"youtube\",\"vimeo\"];class Lt extends _{onBeforeInitSlide(t,e,i){this.processType(i)}onCreateSlide(t,e,i){this.setContent(i)}onClearContent(t,e){e.xhr&&(e.xhr.abort(),e.xhr=null);const i=e.iframeEl;i&&(i.onload=i.onerror=null,i.src=\"//about:blank\",e.iframeEl=null);const n=e.contentEl,s=e.placeholderEl;if(\"inline\"===e.type&&n&&s)n.classList.remove(\"fancybox__content\"),\"none\"!==getComputedStyle(n).getPropertyValue(\"display\")&&(n.style.display=\"none\"),setTimeout((()=>{s&&(n&&s.parentNode&&s.parentNode.insertBefore(n,s),s.remove())}),0),e.contentEl=void 0,e.placeholderEl=void 0;else for(;e.el&&e.el.firstChild;)e.el.removeChild(e.el.firstChild)}onSelectSlide(t,e,i){i.state===lt.Ready&&this.playVideo()}onUnselectSlide(t,e,i){var n,s;if(i.type===Tt){try{null===(s=null===(n=i.el)||void 0===n?void 0:n.querySelector(\"video\"))||void 0===s||s.pause()}catch(t){}return}let o;i.type===Ct?o={method:\"pause\",value:\"true\"}:i.type===Pt&&(o={event:\"command\",func:\"pauseVideo\"}),o&&i.iframeEl&&i.iframeEl.contentWindow&&i.iframeEl.contentWindow.postMessage(JSON.stringify(o),\"*\"),i.poller&&clearTimeout(i.poller)}onDone(t,e){t.isCurrentSlide(e)&&!t.isClosing()&&this.playVideo()}onRefresh(t,e){e.slides.forEach((t=>{t.el&&(this.resizeIframe(t),this.setAspectRatio(t))}))}onMessage(t){try{let e=JSON.parse(t.data);if(\"https://player.vimeo.com\"===t.origin){if(\"ready\"===e.event)for(let e of Array.from(document.getElementsByClassName(\"fancybox__iframe\")))e instanceof HTMLIFrameElement&&e.contentWindow===t.source&&(e.dataset.ready=\"true\")}else if(t.origin.match(/^https:\\/\\/(www.)?youtube(-nocookie)?.com$/)&&\"onReady\"===e.event){const t=document.getElementById(e.id);t&&(t.dataset.ready=\"true\")}}catch(t){}}loadAjaxContent(t){const e=this.instance.optionFor(t,\"src\")||\"\";this.instance.showLoading(t);const i=this.instance,n=new XMLHttpRequest;i.showLoading(t),n.onreadystatechange=function(){n.readyState===XMLHttpRequest.DONE&&i.state===rt.Ready&&(i.hideLoading(t),200===n.status?i.setContent(t,n.responseText):i.setError(t,404===n.status?\"{{AJAX_NOT_FOUND}}\":\"{{AJAX_FORBIDDEN}}\"))};const s=t.ajax||null;n.open(s?\"POST\":\"GET\",e+\"\"),n.setRequestHeader(\"Content-Type\",\"application/x-www-form-urlencoded\"),n.setRequestHeader(\"X-Requested-With\",\"XMLHttpRequest\"),n.send(s),t.xhr=n}setInlineContent(t){let e=null;if(E(t.src))e=t.src;else if(\"string\"==typeof t.src){const i=t.src.split(\"#\",2).pop();e=i?document.getElementById(i):null}if(e){if(\"clone\"===t.type||e.closest(\".fancybox__slide\")){e=e.cloneNode(!0);const i=e.dataset.animationName;i&&(e.classList.remove(i),delete e.dataset.animationName);let n=e.getAttribute(\"id\");n=n?`${n}--clone`:`clone-${this.instance.id}-${t.index}`,e.setAttribute(\"id\",n)}else if(e.parentNode){const i=document.createElement(\"div\");i.classList.add(\"fancybox-placeholder\"),e.parentNode.insertBefore(i,e),t.placeholderEl=i}this.instance.setContent(t,e)}else this.instance.setError(t,\"{{ELEMENT_NOT_FOUND}}\")}setIframeContent(t){const{src:e,el:i}=t;if(!e||\"string\"!=typeof e||!i)return;i.classList.add(\"is-loading\");const n=this.instance,s=document.createElement(\"iframe\");s.className=\"fancybox__iframe\",s.setAttribute(\"id\",`fancybox__iframe_${n.id}_${t.index}`);for(const[e,i]of Object.entries(this.optionFor(t,\"iframeAttr\")||{}))s.setAttribute(e,i);s.onerror=()=>{n.setError(t,\"{{IFRAME_ERROR}}\")},t.iframeEl=s;const o=this.optionFor(t,\"preload\");if(\"iframe\"!==t.type||!1===o)return s.setAttribute(\"src\",t.src+\"\"),n.setContent(t,s,!1),this.resizeIframe(t),void n.revealContent(t);n.showLoading(t),s.onload=()=>{if(!s.src.length)return;const e=\"true\"!==s.dataset.ready;s.dataset.ready=\"true\",this.resizeIframe(t),e?n.revealContent(t):n.hideLoading(t)},s.setAttribute(\"src\",e),n.setContent(t,s,!1)}resizeIframe(t){const{type:e,iframeEl:i}=t;if(e===Pt||e===Ct)return;const n=null==i?void 0:i.parentElement;if(!i||!n)return;let s=t.autoSize;void 0===s&&(s=this.optionFor(t,\"autoSize\"));let o=t.width||0,a=t.height||0;o&&a&&(s=!1);const r=n&&n.style;if(!1!==t.preload&&!1!==s&&r)try{const t=window.getComputedStyle(n),e=parseFloat(t.paddingLeft)+parseFloat(t.paddingRight),s=parseFloat(t.paddingTop)+parseFloat(t.paddingBottom),l=i.contentWindow;if(l){const t=l.document,i=t.getElementsByTagName(xt)[0],n=t.body;r.width=\"\",n.style.overflow=\"hidden\",o=o||i.scrollWidth+e,r.width=`${o}px`,n.style.overflow=\"\",r.flex=\"0 0 auto\",r.height=`${n.scrollHeight}px`,a=i.scrollHeight+s}}catch(t){}if(o||a){const t={flex:\"0 1 auto\",width:\"\",height:\"\"};o&&\"auto\"!==o&&(t.width=`${o}px`),a&&\"auto\"!==a&&(t.height=`${a}px`),Object.assign(r,t)}}playVideo(){const t=this.instance.getSlide();if(!t)return;const{el:e}=t;if(!e||!e.offsetParent)return;if(!this.optionFor(t,\"videoAutoplay\"))return;if(t.type===Tt)try{const t=e.querySelector(\"video\");if(t){const e=t.play();void 0!==e&&e.then((()=>{})).catch((e=>{t.muted=!0,t.play()}))}}catch(t){}if(t.type!==Pt&&t.type!==Ct)return;const i=()=>{if(t.iframeEl&&t.iframeEl.contentWindow){let e;if(\"true\"===t.iframeEl.dataset.ready)return e=t.type===Pt?{event:\"command\",func:\"playVideo\"}:{method:\"play\",value:\"true\"},e&&t.iframeEl.contentWindow.postMessage(JSON.stringify(e),\"*\"),void(t.poller=void 0);t.type===Pt&&(e={event:\"listening\",id:t.iframeEl.getAttribute(\"id\")},t.iframeEl.contentWindow.postMessage(JSON.stringify(e),\"*\"))}t.poller=setTimeout(i,250)};i()}processType(t){if(t.html)return t.type=xt,t.src=t.html,void(t.html=\"\");const e=this.instance.optionFor(t,\"src\",\"\");if(!e||\"string\"!=typeof e)return;let i=t.type,n=null;if(n=e.match(/(youtube\\.com|youtu\\.be|youtube\\-nocookie\\.com)\\/(?:watch\\?(?:.*&)?v=|v\\/|u\\/|shorts\\/|embed\\/?)?(videoseries\\?list=(?:.*)|[\\w-]{11}|\\?listType=(?:.*)&list=(?:.*))(?:.*)/i)){const s=this.optionFor(t,Pt),{nocookie:o}=s,a=function(t,e){var i={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(i[n]=t[n]);if(null!=t&&\"function\"==typeof Object.getOwnPropertySymbols){var s=0;for(n=Object.getOwnPropertySymbols(t);s0?\"svembed\":\"embed\"}`,i=St):(n=e.match(/(?:maps\\.)?google\\.([a-z]{2,3}(?:\\.[a-z]{2})?)\\/(?:maps\\/search\\/)(.*)/i))&&(t.src=`https://maps.google.${n[1]}/maps?q=${n[2].replace(\"query=\",\"q=\").replace(\"api=1\",\"\")}&output=embed`,i=St),i=i||this.instance.option(\"defaultType\"),t.type=i,i===Et&&(t.thumbSrc=t.thumbSrc||t.src)}setContent(t){const e=this.instance.optionFor(t,\"src\")||\"\";if(t&&t.type&&e){switch(t.type){case xt:this.instance.setContent(t,e);break;case Tt:const i=this.option(\"videoTpl\");i&&this.instance.setContent(t,i.replace(/\\{\\{src\\}\\}/gi,e+\"\").replace(/\\{\\{format\\}\\}/gi,this.optionFor(t,\"videoFormat\")||\"\").replace(/\\{\\{poster\\}\\}/gi,t.poster||t.thumbSrc||\"\"));break;case\"inline\":case\"clone\":this.setInlineContent(t);break;case\"ajax\":this.loadAjaxContent(t);break;case\"pdf\":case St:case Pt:case Ct:t.preload=!1;case\"iframe\":this.setIframeContent(t)}this.setAspectRatio(t)}}setAspectRatio(t){const e=t.contentEl;if(!(t.el&&e&&t.type&&[Pt,Ct,Tt].includes(t.type)))return;let i,n=t.width||\"auto\",s=t.height||\"auto\";if(\"auto\"===n||\"auto\"===s){i=this.optionFor(t,\"videoRatio\");const e=(i+\"\").match(/(\\d+)\\s*\\/\\s?(\\d+)/);i=e&&e.length>2?parseFloat(e[1])/parseFloat(e[2]):parseFloat(i+\"\")}else n&&s&&(i=n/s);if(!i)return;e.style.aspectRatio=\"\",e.style.width=\"\",e.style.height=\"\",e.offsetHeight;const o=e.getBoundingClientRect(),a=o.width||1,r=o.height||1;e.style.aspectRatio=i+\"\",i{t.timer=null,t.inHover||t.onTimerEnd()}),i),t.emit(\"set\")}clear(){const t=this;t.timer&&(clearTimeout(t.timer),t.timer=null),t.removeProgressBar()}start(){const t=this;if(t.set(),t.state!==kt){if(t.option(\"pauseOnHover\")){const e=t.instance.container;e.addEventListener(\"mouseenter\",t.onMouseEnter,!1),e.addEventListener(\"mouseleave\",t.onMouseLeave,!1)}document.addEventListener(\"visibilitychange\",t.onVisibilityChange,!1),t.emit(\"start\")}}stop(){const t=this,e=t.state,i=t.instance.container;t.clear(),t.state=kt,i.removeEventListener(\"mouseenter\",t.onMouseEnter,!1),i.removeEventListener(\"mouseleave\",t.onMouseLeave,!1),document.removeEventListener(\"visibilitychange\",t.onVisibilityChange,!1),S(i,\"has-autoplay\"),e!==kt&&t.emit(\"stop\")}pause(){const t=this;t.state===zt&&(t.state=Rt,t.clear(),t.emit(Rt))}resume(){const t=this,e=t.instance;if(e.isInfinite||e.page!==e.pages.length-1)if(t.state!==zt){if(t.state===Rt&&!t.inHover){const e=new Event(\"resume\",{bubbles:!0,cancelable:!0});t.emit(\"resume\",e),e.defaultPrevented||t.set()}}else t.set();else t.stop()}toggle(){this.state===zt||this.state===Rt?this.stop():this.start()}attach(){const t=this,e=t.instance;e.on(\"ready\",t.onReady),e.on(\"Panzoom.startAnimation\",t.onChange),e.on(\"Panzoom.endAnimation\",t.onSettle),e.on(\"Panzoom.touchMove\",t.onChange)}detach(){const t=this,e=t.instance;e.off(\"ready\",t.onReady),e.off(\"Panzoom.startAnimation\",t.onChange),e.off(\"Panzoom.endAnimation\",t.onSettle),e.off(\"Panzoom.touchMove\",t.onChange),t.stop()}}Object.defineProperty(It,\"defaults\",{enumerable:!0,configurable:!0,writable:!0,value:{autoStart:!0,pauseOnHover:!0,progressParentEl:null,showProgress:!0,timeout:3e3}});class Dt extends _{constructor(){super(...arguments),Object.defineProperty(this,\"ref\",{enumerable:!0,configurable:!0,writable:!0,value:null})}onPrepare(t){const e=t.carousel;if(!e)return;const i=t.container;i&&(e.options.Autoplay=u({autoStart:!1},this.option(\"Autoplay\")||{},{pauseOnHover:!1,timeout:this.option(\"timeout\"),progressParentEl:()=>this.option(\"progressParentEl\")||null,on:{start:()=>{t.emit(\"startSlideshow\")},set:e=>{var n;i.classList.add(\"has-slideshow\"),(null===(n=t.getSlide())||void 0===n?void 0:n.state)!==lt.Ready&&e.pause()},stop:()=>{i.classList.remove(\"has-slideshow\"),t.isCompact||t.endIdle(),t.emit(\"endSlideshow\")},resume:(e,i)=>{var n,s,o;!i||!i.cancelable||(null===(n=t.getSlide())||void 0===n?void 0:n.state)===lt.Ready&&(null===(o=null===(s=t.carousel)||void 0===s?void 0:s.panzoom)||void 0===o?void 0:o.isResting)||i.preventDefault()}}}),e.attachPlugins({Autoplay:It}),this.ref=e.plugins.Autoplay)}onReady(t){const e=t.carousel,i=this.ref;i&&e&&this.option(\"playOnStart\")&&(e.isInfinite||e.page{t.isCurrentSlide(e)&&i.stop()})),t.isCurrentSlide(e)&&i.resume()}onKeydown(t,e){var i;const n=this.ref;n&&e===this.option(\"key\")&&\"BUTTON\"!==(null===(i=document.activeElement)||void 0===i?void 0:i.nodeName)&&n.toggle()}attach(){const t=this,e=t.instance;e.on(\"Carousel.init\",t.onPrepare),e.on(\"Carousel.ready\",t.onReady),e.on(\"done\",t.onDone),e.on(\"keydown\",t.onKeydown)}detach(){const t=this,e=t.instance;e.off(\"Carousel.init\",t.onPrepare),e.off(\"Carousel.ready\",t.onReady),e.off(\"done\",t.onDone),e.off(\"keydown\",t.onKeydown)}}Object.defineProperty(Dt,\"defaults\",{enumerable:!0,configurable:!0,writable:!0,value:{key:\" \",playOnStart:!1,progressParentEl:t=>{var e;return(null===(e=t.instance.container)||void 0===e?void 0:e.querySelector(\".fancybox__toolbar [data-fancybox-toggle-slideshow]\"))||t.instance.container},timeout:3e3}});const Ft={classes:{container:\"f-thumbs f-carousel__thumbs\",viewport:\"f-thumbs__viewport\",track:\"f-thumbs__track\",slide:\"f-thumbs__slide\",isResting:\"is-resting\",isSelected:\"is-selected\",isLoading:\"is-loading\",hasThumbs:\"has-thumbs\"},minCount:2,parentEl:null,thumbTpl:'',type:\"modern\"};var jt;!function(t){t[t.Init=0]=\"Init\",t[t.Ready=1]=\"Ready\",t[t.Hidden=2]=\"Hidden\"}(jt||(jt={}));const Bt=\"isResting\",Ht=\"thumbWidth\",Nt=\"thumbHeight\",_t=\"thumbClipWidth\";let $t=class extends _{constructor(){super(...arguments),Object.defineProperty(this,\"type\",{enumerable:!0,configurable:!0,writable:!0,value:\"modern\"}),Object.defineProperty(this,\"container\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"track\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"carousel\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"thumbWidth\",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,\"thumbClipWidth\",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,\"thumbHeight\",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,\"thumbGap\",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,\"thumbExtraGap\",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,\"state\",{enumerable:!0,configurable:!0,writable:!0,value:jt.Init})}get isModern(){return\"modern\"===this.type}onInitSlide(t,e){const i=e.el?e.el.dataset:void 0;i&&(e.thumbSrc=i.thumbSrc||e.thumbSrc||\"\",e[_t]=parseFloat(i[_t]||\"\")||e[_t]||0,e[Nt]=parseFloat(i.thumbHeight||\"\")||e[Nt]||0),this.addSlide(e)}onInitSlides(){this.build()}onChange(){var t;if(!this.isModern)return;const e=this.container,i=this.instance,n=i.panzoom,s=this.carousel,a=s?s.panzoom:null,r=i.page;if(n&&s&&a){if(n.isDragging){S(e,this.cn(Bt));let n=(null===(t=s.pages[r])||void 0===t?void 0:t.pos)||0;n+=i.getProgress(r)*(this[_t]+this.thumbGap);let o=a.getBounds();-1*n>o.x.min&&-1*nparseFloat(getComputedStyle(t).getPropertyValue(\"--f-thumb-\"+e))||0;this.thumbGap=e(\"gap\"),this.thumbExtraGap=e(\"extra-gap\"),this[Ht]=e(\"width\")||40,this[_t]=e(\"clip-width\")||40,this[Nt]=e(\"height\")||40}build(){const t=this;if(t.state!==jt.Init)return;if(t.isDisabled())return void t.emit(\"disabled\");const e=t.instance,i=e.container,n=t.getSlides(),s=t.option(\"type\");t.type=s;const o=t.option(\"parentEl\"),a=t.cn(\"container\"),r=t.cn(\"track\");let l=null==o?void 0:o.querySelector(\".\"+a);l||(l=document.createElement(\"div\"),P(l,a),o?o.appendChild(l):i.after(l)),P(l,`is-${s}`),P(i,t.cn(\"hasThumbs\")),t.container=l,t.updateProps();let c=l.querySelector(\".\"+r);c||(c=document.createElement(\"div\"),P(c,t.cn(\"track\")),l.appendChild(c)),t.track=c;const h=u({},{track:c,infinite:!1,center:!0,fill:\"classic\"===s,dragFree:!0,slidesPerPage:1,transition:!1,preload:.25,friction:.12,Panzoom:{maxVelocity:0},Dots:!1,Navigation:!1,classes:{container:\"f-thumbs\",viewport:\"f-thumbs__viewport\",track:\"f-thumbs__track\",slide:\"f-thumbs__slide\"}},t.option(\"Carousel\")||{},{Sync:{target:e},slides:n}),d=new e.constructor(l,h);d.on(\"createSlide\",((e,i)=>{t.setProps(i.index),t.emit(\"createSlide\",i,i.el)})),d.on(\"ready\",(()=>{t.shiftModern(),t.emit(\"ready\")})),d.on(\"refresh\",(()=>{t.shiftModern()})),d.on(\"Panzoom.click\",((e,i,n)=>{t.onClick(n)})),t.carousel=d,t.state=jt.Ready}onClick(t){t.preventDefault(),t.stopPropagation();const e=this.instance,{pages:i,page:n}=e,s=t=>{if(t){const e=t.closest(\"[data-carousel-index]\");if(e)return[parseInt(e.dataset.carouselIndex||\"\",10)||0,e]}return[-1,void 0]},o=(t,e)=>{const i=document.elementFromPoint(t,e);return i?s(i):[-1,void 0]};let[a,r]=s(t.target);if(a>-1)return;const l=this[_t],c=t.clientX,h=t.clientY;let[d,u]=o(c-l,h),[p,f]=o(c+l,h);u&&f?(a=Math.abs(c-u.getBoundingClientRect().right)-1&&i[a]&&e.slideTo(a)}getShift(t){var e;const i=this,{instance:n}=i,s=i.carousel;if(!n||!s)return 0;const o=i[Ht],a=i[_t],r=i.thumbGap,l=i.thumbExtraGap;if(!(null===(e=s.slides[t])||void 0===e?void 0:e.el))return 0;const c=.5*(o-a),h=n.pages.length-1;let d=n.getProgress(0),u=n.getProgress(h),p=n.getProgress(t,!1,!0),f=0,g=c+l+r;const m=d<0&&d>-1,v=u>0&&u<1;return 0===t?(f=g*Math.abs(d),v&&1===d&&(f-=g*Math.abs(u))):t===h?(f=g*Math.abs(u)*-1,m&&-1===u&&(f+=g*Math.abs(d))):m||v?(f=-1*g,f+=g*Math.abs(d),f+=g*(1-Math.abs(u))):f=g*p,f}setProps(e){var i;const n=this;if(!n.isModern)return;const{instance:s}=n,o=n.carousel;if(s&&o){const a=null===(i=o.slides[e])||void 0===i?void 0:i.el;if(a&&a.childNodes.length){let i=t(1-Math.abs(s.getProgress(e))),o=t(n.getShift(e));a.style.setProperty(\"--progress\",i?i+\"\":\"\"),a.style.setProperty(\"--shift\",o+\"\")}}}shiftModern(){const t=this;if(!t.isModern)return;const{instance:e,track:i}=t,n=e.panzoom,s=t.carousel;if(!(e&&i&&n&&s))return;if(n.state===m.Init||n.state===m.Destroy)return;for(const i of e.slides)t.setProps(i.index);let o=(t[_t]+t.thumbGap)*(s.slides.length||0);i.style.setProperty(\"--width\",o+\"\")}cleanup(){const t=this;t.carousel&&t.carousel.destroy(),t.carousel=null,t.container&&t.container.remove(),t.container=null,t.track&&t.track.remove(),t.track=null,t.state=jt.Init,S(t.instance.container,t.cn(\"hasThumbs\"))}attach(){const t=this,e=t.instance;e.on(\"initSlide\",t.onInitSlide),e.state===B.Init?e.on(\"initSlides\",t.onInitSlides):t.onInitSlides(),e.on([\"change\",\"Panzoom.afterTransform\"],t.onChange),e.on(\"Panzoom.refresh\",t.onRefresh)}detach(){const t=this,e=t.instance;e.off(\"initSlide\",t.onInitSlide),e.off(\"initSlides\",t.onInitSlides),e.off([\"change\",\"Panzoom.afterTransform\"],t.onChange),e.off(\"Panzoom.refresh\",t.onRefresh),t.cleanup()}};Object.defineProperty($t,\"defaults\",{enumerable:!0,configurable:!0,writable:!0,value:Ft});const Wt=Object.assign(Object.assign({},Ft),{key:\"t\",showOnStart:!0,parentEl:null}),Xt=\"is-masked\",qt=\"aria-hidden\";class Yt extends _{constructor(){super(...arguments),Object.defineProperty(this,\"ref\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"hidden\",{enumerable:!0,configurable:!0,writable:!0,value:!1})}get isEnabled(){const t=this.ref;return t&&!t.isDisabled()}get isHidden(){return this.hidden}onClick(t,e){e.stopPropagation()}onCreateSlide(t,e){var i,n,s;const o=(null===(s=null===(n=null===(i=this.instance)||void 0===i?void 0:i.carousel)||void 0===n?void 0:n.slides[e.index])||void 0===s?void 0:s.type)||\"\",a=e.el;if(a&&o){let t=`for-${o}`;[\"video\",\"youtube\",\"vimeo\",\"html5video\"].includes(o)&&(t+=\" for-video\"),P(a,t)}}onInit(){var t;const e=this,i=e.instance,n=i.carousel;if(e.ref||!n)return;const s=e.option(\"parentEl\")||i.footer||i.container;if(!s)return;const o=u({},e.options,{parentEl:s,classes:{container:\"f-thumbs fancybox__thumbs\"},Carousel:{Sync:{friction:i.option(\"Carousel.friction\")||0}},on:{ready:t=>{const i=t.container;i&&this.hidden&&(e.refresh(),i.style.transition=\"none\",e.hide(),i.offsetHeight,queueMicrotask((()=>{i.style.transition=\"\",e.show()})))}}});o.Carousel=o.Carousel||{},o.Carousel.on=u((null===(t=e.options.Carousel)||void 0===t?void 0:t.on)||{},{click:this.onClick,createSlide:this.onCreateSlide}),n.options.Thumbs=o,n.attachPlugins({Thumbs:$t}),e.ref=n.plugins.Thumbs,e.option(\"showOnStart\")||(e.ref.state=jt.Hidden,e.hidden=!0)}onResize(){var t;const e=null===(t=this.ref)||void 0===t?void 0:t.container;e&&(e.style.maxHeight=\"\")}onKeydown(t,e){const i=this.option(\"key\");i&&i===e&&this.toggle()}toggle(){const t=this.ref;if(t&&!t.isDisabled())return t.state===jt.Hidden?(t.state=jt.Init,void t.build()):void(this.hidden?this.show():this.hide())}show(){const t=this.ref;if(!t||t.isDisabled())return;const e=t.container;e&&(this.refresh(),e.offsetHeight,e.removeAttribute(qt),e.classList.remove(Xt),this.hidden=!1)}hide(){const t=this.ref,e=t&&t.container;e&&(this.refresh(),e.offsetHeight,e.classList.add(Xt),e.setAttribute(qt,\"true\")),this.hidden=!0}refresh(){const t=this.ref;if(!t||!t.state)return;const e=t.container,i=(null==e?void 0:e.firstChild)||null;e&&i&&i.childNodes.length&&(e.style.maxHeight=`${i.getBoundingClientRect().height}px`)}attach(){const t=this,e=t.instance;e.state===rt.Init?e.on(\"Carousel.init\",t.onInit):t.onInit(),e.on(\"resize\",t.onResize),e.on(\"keydown\",t.onKeydown)}detach(){var t;const e=this,i=e.instance;i.off(\"Carousel.init\",e.onInit),i.off(\"resize\",e.onResize),i.off(\"keydown\",e.onKeydown),null===(t=i.carousel)||void 0===t||t.detachPlugins([\"Thumbs\"]),e.ref=null}}Object.defineProperty(Yt,\"defaults\",{enumerable:!0,configurable:!0,writable:!0,value:Wt});const Vt={panLeft:{icon:'',change:{panX:-100}},panRight:{icon:'',change:{panX:100}},panUp:{icon:'',change:{panY:-100}},panDown:{icon:'',change:{panY:100}},zoomIn:{icon:'',action:\"zoomIn\"},zoomOut:{icon:'',action:\"zoomOut\"},toggle1to1:{icon:'',action:\"toggleZoom\"},toggleZoom:{icon:'',action:\"toggleZoom\"},iterateZoom:{icon:'',action:\"iterateZoom\"},rotateCCW:{icon:'',action:\"rotateCCW\"},rotateCW:{icon:'',action:\"rotateCW\"},flipX:{icon:'',action:\"flipX\"},flipY:{icon:'',action:\"flipY\"},fitX:{icon:'',action:\"fitX\"},fitY:{icon:'',action:\"fitY\"},reset:{icon:'',action:\"reset\"},toggleFS:{icon:'',action:\"toggleFS\"}};var Zt;!function(t){t[t.Init=0]=\"Init\",t[t.Ready=1]=\"Ready\",t[t.Disabled=2]=\"Disabled\"}(Zt||(Zt={}));const Ut={absolute:\"auto\",display:{left:[\"infobar\"],middle:[],right:[\"iterateZoom\",\"slideshow\",\"fullscreen\",\"thumbs\",\"close\"]},enabled:\"auto\",items:{infobar:{tpl:'
/
'},download:{tpl:'
'},prev:{tpl:''},next:{tpl:''},slideshow:{tpl:''},fullscreen:{tpl:''},thumbs:{tpl:''},close:{tpl:''}},parentEl:null},Gt={tabindex:\"-1\",width:\"24\",height:\"24\",viewBox:\"0 0 24 24\",xmlns:\"http://www.w3.org/2000/svg\"},Kt=\"has-toolbar\",Jt=\"fancybox__toolbar\";class Qt extends _{constructor(){super(...arguments),Object.defineProperty(this,\"state\",{enumerable:!0,configurable:!0,writable:!0,value:Zt.Init}),Object.defineProperty(this,\"container\",{enumerable:!0,configurable:!0,writable:!0,value:null})}onReady(t){var e;if(!t.carousel)return;let i=this.option(\"display\"),n=this.option(\"absolute\"),s=this.option(\"enabled\");if(\"auto\"===s){const t=this.instance.carousel;let e=0;if(t)for(const i of t.slides)(i.panzoom||\"image\"===i.type)&&e++;e||(s=!1)}s||(i=void 0);let o=0;const a={left:[],middle:[],right:[]};if(i)for(const t of[\"left\",\"middle\",\"right\"])for(const n of i[t]){const i=this.createEl(n);i&&(null===(e=a[t])||void 0===e||e.push(i),o++)}let r=null;if(o&&(r=this.createContainer()),r){for(const[t,e]of Object.entries(a)){const i=document.createElement(\"div\");P(i,Jt+\"__column is-\"+t);for(const t of e)i.appendChild(t);\"auto\"!==n||\"middle\"!==t||e.length||(n=!0),r.appendChild(i)}!0===n&&P(r,\"is-absolute\"),this.state=Zt.Ready,this.onRefresh()}else this.state=Zt.Disabled}onClick(t){var e,i;const n=this.instance,s=n.getSlide(),o=null==s?void 0:s.panzoom,a=t.target,r=a&&E(a)?a.dataset:null;if(!r)return;if(void 0!==r.fancyboxToggleThumbs)return t.preventDefault(),t.stopPropagation(),void(null===(e=n.plugins.Thumbs)||void 0===e||e.toggle());if(void 0!==r.fancyboxToggleFullscreen)return t.preventDefault(),t.stopPropagation(),void this.instance.toggleFullscreen();if(void 0!==r.fancyboxToggleSlideshow){t.preventDefault(),t.stopPropagation();const e=null===(i=n.carousel)||void 0===i?void 0:i.plugins.Autoplay;let s=e.isActive;return o&&\"mousemove\"===o.panMode&&!s&&o.reset(),void(s?e.stop():e.start())}const l=r.panzoomAction,c=r.panzoomChange;if((c||l)&&(t.preventDefault(),t.stopPropagation()),c){let t={};try{t=JSON.parse(c)}catch(t){}o&&o.applyChange(t)}else l&&o&&o[l]&&o[l]()}onChange(){this.onRefresh()}onRefresh(){if(this.instance.isClosing())return;const t=this.container;if(!t)return;const e=this.instance.getSlide();if(!e||e.state!==lt.Ready)return;const i=e&&!e.error&&e.panzoom;for(const e of t.querySelectorAll(\"[data-panzoom-action]\"))i?(e.removeAttribute(\"disabled\"),e.removeAttribute(\"tabindex\")):(e.setAttribute(\"disabled\",\"\"),e.setAttribute(\"tabindex\",\"-1\"));let n=i&&i.canZoomIn(),s=i&&i.canZoomOut();for(const e of t.querySelectorAll('[data-panzoom-action=\"zoomIn\"]'))n?(e.removeAttribute(\"disabled\"),e.removeAttribute(\"tabindex\")):(e.setAttribute(\"disabled\",\"\"),e.setAttribute(\"tabindex\",\"-1\"));for(const e of t.querySelectorAll('[data-panzoom-action=\"zoomOut\"]'))s?(e.removeAttribute(\"disabled\"),e.removeAttribute(\"tabindex\")):(e.setAttribute(\"disabled\",\"\"),e.setAttribute(\"tabindex\",\"-1\"));for(const e of t.querySelectorAll('[data-panzoom-action=\"toggleZoom\"],[data-panzoom-action=\"iterateZoom\"]')){s||n?(e.removeAttribute(\"disabled\"),e.removeAttribute(\"tabindex\")):(e.setAttribute(\"disabled\",\"\"),e.setAttribute(\"tabindex\",\"-1\"));const t=e.querySelector(\"g\");t&&(t.style.display=n?\"\":\"none\")}}onDone(t,e){var i;null===(i=e.panzoom)||void 0===i||i.on(\"afterTransform\",(()=>{this.instance.isCurrentSlide(e)&&this.onRefresh()})),this.instance.isCurrentSlide(e)&&this.onRefresh()}createContainer(){const t=this.instance.container;if(!t)return null;const e=this.option(\"parentEl\")||t;let i=e.querySelector(\".\"+Jt);return i||(i=document.createElement(\"div\"),P(i,Jt),e.prepend(i)),i.addEventListener(\"click\",this.onClick,{passive:!1,capture:!0}),t&&P(t,Kt),this.container=i,i}createEl(t){const e=this.instance,i=e.carousel;if(!i)return null;if(\"toggleFS\"===t)return null;if(\"fullscreen\"===t&&!ot())return null;let s=null;const o=i.slides.length||0;let a=0,r=0;for(const t of i.slides)(t.panzoom||\"image\"===t.type)&&a++,(\"image\"===t.type||t.downloadSrc)&&r++;if(o<2&&[\"infobar\",\"prev\",\"next\"].includes(t))return s;if(void 0!==Vt[t]&&!a)return null;if(\"download\"===t&&!r)return null;if(\"thumbs\"===t){const t=e.plugins.Thumbs;if(!t||!t.isEnabled)return null}if(\"slideshow\"===t){if(!i.plugins.Autoplay||o<2)return null}if(void 0!==Vt[t]){const e=Vt[t];s=document.createElement(\"button\"),s.setAttribute(\"title\",this.instance.localize(`{{${t.toUpperCase()}}}`)),P(s,\"f-button\"),e.action&&(s.dataset.panzoomAction=e.action),e.change&&(s.dataset.panzoomChange=JSON.stringify(e.change)),s.appendChild(n(this.instance.localize(e.icon)))}else{const e=(this.option(\"items\")||[])[t];e&&(s=n(this.instance.localize(e.tpl)),\"function\"==typeof e.click&&s.addEventListener(\"click\",(t=>{t.preventDefault(),t.stopPropagation(),\"function\"==typeof e.click&&e.click.call(this,this,t)})))}const l=null==s?void 0:s.querySelector(\"svg\");if(l)for(const[t,e]of Object.entries(Gt))l.getAttribute(t)||l.setAttribute(t,String(e));return s}removeContainer(){const t=this.container;t&&t.remove(),this.container=null,this.state=Zt.Disabled;const e=this.instance.container;e&&S(e,Kt)}attach(){const t=this,e=t.instance;e.on(\"Carousel.initSlides\",t.onReady),e.on(\"done\",t.onDone),e.on([\"reveal\",\"Carousel.change\"],t.onChange),t.onReady(t.instance)}detach(){const t=this,e=t.instance;e.off(\"Carousel.initSlides\",t.onReady),e.off(\"done\",t.onDone),e.off([\"reveal\",\"Carousel.change\"],t.onChange),t.removeContainer()}}Object.defineProperty(Qt,\"defaults\",{enumerable:!0,configurable:!0,writable:!0,value:Ut});const te={Hash:class extends _{onReady(){ht=!1}onChange(t){ut&&clearTimeout(ut);const{hash:e}=pt(),{hash:i}=ft(),n=t.isOpeningSlide(t.getSlide());n&&(ct=i===e?\"\":i),e&&e!==i&&(ut=setTimeout((()=>{try{if(t.state===rt.Ready){let t=\"replaceState\";n&&!dt&&(t=\"pushState\",dt=!0),window.history[t]({},document.title,window.location.pathname+window.location.search+e)}}catch(t){}}),300))}onClose(t){if(ut&&clearTimeout(ut),!ht&&dt)return dt=!1,ht=!1,void window.history.back();if(!ht)try{window.history.replaceState({},document.title,window.location.pathname+window.location.search+(ct||\"\"))}catch(t){}}attach(){const t=this.instance;t.on(\"ready\",this.onReady),t.on([\"Carousel.ready\",\"Carousel.change\"],this.onChange),t.on(\"close\",this.onClose)}detach(){const t=this.instance;t.off(\"ready\",this.onReady),t.off([\"Carousel.ready\",\"Carousel.change\"],this.onChange),t.off(\"close\",this.onClose)}static parseURL(){return ft()}static startFromUrl(){gt()}static destroy(){window.removeEventListener(\"hashchange\",vt,!1)}},Html:Lt,Images:wt,Slideshow:Dt,Thumbs:Yt,Toolbar:Qt},ee=\"with-fancybox\",ie=\"hide-scrollbar\",ne=\"--fancybox-scrollbar-compensate\",se=\"--fancybox-body-margin\",oe=\"aria-hidden\",ae=\"is-using-tab\",re=\"is-animated\",le=\"is-compact\",ce=\"is-loading\",he=\"is-opening\",de=\"has-caption\",ue=\"disabled\",pe=\"tabindex\",fe=\"download\",ge=\"href\",me=\"src\",ve=t=>\"string\"==typeof t,be=function(){var t=window.getSelection();return!!t&&\"Range\"===t.type};let ye,we=null,xe=null,Ee=0,Se=0,Pe=0,Ce=0;const Te=new Map;let Me=0;class Oe extends g{get isIdle(){return this.idle}get isCompact(){return this.option(\"compact\")}constructor(t=[],e={},i={}){super(e),Object.defineProperty(this,\"userSlides\",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,\"userPlugins\",{enumerable:!0,configurable:!0,writable:!0,value:{}}),Object.defineProperty(this,\"idle\",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,\"idleTimer\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"clickTimer\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"pwt\",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,\"ignoreFocusChange\",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,\"startedFs\",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,\"state\",{enumerable:!0,configurable:!0,writable:!0,value:rt.Init}),Object.defineProperty(this,\"id\",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,\"container\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"caption\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"footer\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"carousel\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"lastFocus\",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,\"prevMouseMoveEvent\",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),ye||(ye=ot()),this.id=e.id||++Me,Te.set(this.id,this),this.userSlides=t,this.userPlugins=i,queueMicrotask((()=>{this.init()}))}init(){if(this.state===rt.Destroy)return;this.state=rt.Init,this.attachPlugins(Object.assign(Object.assign({},Oe.Plugins),this.userPlugins)),this.emit(\"init\"),this.emit(\"attachPlugins\"),!0===this.option(\"hideScrollbar\")&&(()=>{if(!et)return;const t=document,e=t.body,i=t.documentElement;if(e.classList.contains(ie))return;let n=window.innerWidth-i.getBoundingClientRect().width;const s=parseFloat(window.getComputedStyle(e).marginRight);n<0&&(n=0),i.style.setProperty(ne,`${n}px`),s&&e.style.setProperty(se,`${s}px`),e.classList.add(ie)})(),this.initLayout(),this.scale();const t=()=>{this.initCarousel(this.userSlides),this.state=rt.Ready,this.attachEvents(),this.emit(\"ready\"),setTimeout((()=>{this.container&&this.container.setAttribute(oe,\"false\")}),16)};this.option(\"Fullscreen.autoStart\")&&ye&&!ye.isFullscreen()?ye.request().then((()=>{this.startedFs=!0,t()})).catch((()=>t())):t()}initLayout(){var t,e;const i=this.option(\"parentEl\")||document.body,s=n(this.localize(this.option(\"tpl.main\")||\"\"));if(s){if(s.setAttribute(\"id\",`fancybox-${this.id}`),s.setAttribute(\"aria-label\",this.localize(\"{{MODAL}}\")),s.classList.toggle(le,this.isCompact),P(s,this.option(\"mainClass\")||\"\"),P(s,he),this.container=s,this.footer=s.querySelector(\".fancybox__footer\"),i.appendChild(s),P(document.documentElement,ee),we&&xe||(we=document.createElement(\"span\"),P(we,\"fancybox-focus-guard\"),we.setAttribute(pe,\"0\"),we.setAttribute(oe,\"true\"),we.setAttribute(\"aria-label\",\"Focus guard\"),xe=we.cloneNode(),null===(t=s.parentElement)||void 0===t||t.insertBefore(we,s),null===(e=s.parentElement)||void 0===e||e.append(xe)),s.addEventListener(\"mousedown\",(t=>{Ee=t.pageX,Se=t.pageY,S(s,ae)})),this.option(\"closeExisting\"))for(const t of Te.values())t.id!==this.id&&t.close();else this.option(\"animated\")&&(P(s,re),setTimeout((()=>{this.isClosing()||S(s,re)}),350));this.emit(\"initLayout\")}}initCarousel(t){const i=this.container;if(!i)return;const n=i.querySelector(\".fancybox__carousel\");if(!n)return;const s=this.carousel=new Q(n,u({},{slides:t,transition:\"fade\",Panzoom:{lockAxis:this.option(\"dragToClose\")?\"xy\":\"x\",infinite:!!this.option(\"dragToClose\")&&\"y\"},Dots:!1,Navigation:{classes:{container:\"fancybox__nav\",button:\"f-button\",isNext:\"is-next\",isPrev:\"is-prev\"}},initialPage:this.option(\"startIndex\"),l10n:this.option(\"l10n\")},this.option(\"Carousel\")||{}));s.on(\"*\",((t,e,...i)=>{this.emit(`Carousel.${e}`,t,...i)})),s.on([\"ready\",\"change\"],(()=>{this.manageCaption()})),this.on(\"Carousel.removeSlide\",((t,e,i)=>{this.clearContent(i),i.state=void 0})),s.on(\"Panzoom.touchStart\",(()=>{var t,e;this.isCompact||this.endIdle(),(null===(t=document.activeElement)||void 0===t?void 0:t.closest(\".f-thumbs\"))&&(null===(e=this.container)||void 0===e||e.focus())})),s.on(\"settle\",(()=>{this.idleTimer||this.isCompact||!this.option(\"idle\")||this.setIdle(),this.option(\"autoFocus\")&&!this.isClosing&&this.checkFocus()})),this.option(\"dragToClose\")&&(s.on(\"Panzoom.afterTransform\",((t,i)=>{const n=this.getSlide();if(n&&e(n.el))return;const s=this.container;if(s){const t=Math.abs(i.current.f),e=t<1?\"\":Math.max(.5,Math.min(1,1-t/i.contentRect.fitHeight*1.5));s.style.setProperty(\"--fancybox-ts\",e?\"0s\":\"\"),s.style.setProperty(\"--fancybox-opacity\",e+\"\")}})),s.on(\"Panzoom.touchEnd\",((t,i,n)=>{var s;const o=this.getSlide();if(o&&e(o.el))return;if(i.isMobile&&document.activeElement&&-1!==[\"TEXTAREA\",\"INPUT\"].indexOf(null===(s=document.activeElement)||void 0===s?void 0:s.nodeName))return;const a=Math.abs(i.dragOffset.y);\"y\"===i.lockedAxis&&(a>=200||a>=50&&i.dragOffset.time<300)&&(n&&n.cancelable&&n.preventDefault(),this.close(n,\"f-throwOut\"+(i.current.f<0?\"Up\":\"Down\")))}))),s.on(\"change\",(t=>{var e;let i=null===(e=this.getSlide())||void 0===e?void 0:e.triggerEl;if(i){const e=new CustomEvent(\"slideTo\",{bubbles:!0,cancelable:!0,detail:t.page});i.dispatchEvent(e)}})),s.on([\"refresh\",\"change\"],(t=>{const e=this.container;if(!e)return;for(const i of e.querySelectorAll(\"[data-fancybox-current-index]\"))i.innerHTML=t.page+1;for(const i of e.querySelectorAll(\"[data-fancybox-count]\"))i.innerHTML=t.pages.length;if(!t.isInfinite){for(const i of e.querySelectorAll(\"[data-fancybox-next]\"))t.page0?(i.removeAttribute(ue),i.removeAttribute(pe)):(i.setAttribute(ue,\"\"),i.setAttribute(pe,\"-1\"))}const i=this.getSlide();if(!i)return;let n=i.downloadSrc||\"\";n||\"image\"!==i.type||i.error||!ve(i[me])||(n=i[me]);for(const t of e.querySelectorAll(\"[data-fancybox-download]\")){const e=i.downloadFilename;n?(t.removeAttribute(ue),t.removeAttribute(pe),t.setAttribute(ge,n),t.setAttribute(fe,e||n),t.setAttribute(\"target\",\"_blank\")):(t.setAttribute(ue,\"\"),t.setAttribute(pe,\"-1\"),t.removeAttribute(ge),t.removeAttribute(fe))}})),this.emit(\"initCarousel\")}attachEvents(){const t=this,e=t.container;if(!e)return;e.addEventListener(\"click\",t.onClick,{passive:!1,capture:!1}),e.addEventListener(\"wheel\",t.onWheel,{passive:!1,capture:!1}),document.addEventListener(\"keydown\",t.onKeydown,{passive:!1,capture:!0}),document.addEventListener(\"visibilitychange\",t.onVisibilityChange,!1),document.addEventListener(\"mousemove\",t.onMousemove),t.option(\"trapFocus\")&&document.addEventListener(\"focus\",t.onFocus,!0),window.addEventListener(\"resize\",t.onResize);const i=window.visualViewport;i&&(i.addEventListener(\"scroll\",t.onResize),i.addEventListener(\"resize\",t.onResize))}detachEvents(){const t=this,e=t.container;if(!e)return;document.removeEventListener(\"keydown\",t.onKeydown,{passive:!1,capture:!0}),e.removeEventListener(\"wheel\",t.onWheel,{passive:!1,capture:!1}),e.removeEventListener(\"click\",t.onClick,{passive:!1,capture:!1}),document.removeEventListener(\"mousemove\",t.onMousemove),window.removeEventListener(\"resize\",t.onResize);const i=window.visualViewport;i&&(i.removeEventListener(\"resize\",t.onResize),i.removeEventListener(\"scroll\",t.onResize)),document.removeEventListener(\"visibilitychange\",t.onVisibilityChange,!1),document.removeEventListener(\"focus\",t.onFocus,!0)}scale(){const t=this.container;if(!t)return;const e=window.visualViewport,i=Math.max(1,(null==e?void 0:e.scale)||1);let n=\"\",s=\"\",o=\"\";if(e&&i>1){let t=`${e.offsetLeft}px`,a=`${e.offsetTop}px`;n=e.width*i+\"px\",s=e.height*i+\"px\",o=`translate3d(${t}, ${a}, 0) scale(${1/i})`}t.style.transform=o,t.style.width=n,t.style.height=s}onClick(t){var e;const{container:i,isCompact:n}=this;if(!i||this.isClosing())return;!n&&this.option(\"idle\")&&this.resetIdle();const s=t.composedPath()[0];if(s.closest(\".fancybox-spinner\")||s.closest(\"[data-fancybox-close]\"))return t.preventDefault(),void this.close(t);if(s.closest(\"[data-fancybox-prev]\"))return t.preventDefault(),void this.prev();if(s.closest(\"[data-fancybox-next]\"))return t.preventDefault(),void this.next();if(\"click\"===t.type&&0===t.detail)return;if(Math.abs(t.pageX-Ee)>30||Math.abs(t.pageY-Se)>30)return;const o=document.activeElement;if(be()&&o&&i.contains(o))return;if(n&&\"image\"===(null===(e=this.getSlide())||void 0===e?void 0:e.type))return void(this.clickTimer?(clearTimeout(this.clickTimer),this.clickTimer=null):this.clickTimer=setTimeout((()=>{this.toggleIdle(),this.clickTimer=null}),350));if(this.emit(\"click\",t),t.defaultPrevented)return;let a=!1;if(s.closest(\".fancybox__content\")){if(o){if(o.closest(\"[contenteditable]\"))return;s.matches(nt)||o.blur()}if(be())return;a=this.option(\"contentClick\")}else s.closest(\".fancybox__carousel\")&&!s.matches(nt)&&(a=this.option(\"backdropClick\"));\"close\"===a?(t.preventDefault(),this.close(t)):\"next\"===a?(t.preventDefault(),this.next()):\"prev\"===a&&(t.preventDefault(),this.prev())}onWheel(t){const e=t.target;let n=this.option(\"wheel\",t);e.closest(\".fancybox__thumbs\")&&(n=\"slide\");const s=\"slide\"===n,o=[-t.deltaX||0,-t.deltaY||0,-t.detail||0].reduce((function(t,e){return Math.abs(e)>Math.abs(t)?e:t})),a=Math.max(-1,Math.min(1,o)),r=Date.now();this.pwt&&r-this.pwt<300?s&&t.preventDefault():(this.pwt=r,this.emit(\"wheel\",t,a),t.defaultPrevented||(\"close\"===n?(t.preventDefault(),this.close(t)):\"slide\"===n&&(i(e)||(t.preventDefault(),this[a>0?\"prev\":\"next\"]()))))}onScroll(){window.scrollTo(Pe,Ce)}onKeydown(t){if(!this.isTopmost())return;this.isCompact||!this.option(\"idle\")||this.isClosing()||this.resetIdle();const e=t.key,i=this.option(\"keyboard\");if(!i)return;const n=t.composedPath()[0],s=document.activeElement&&document.activeElement.classList,o=s&&s.contains(\"f-button\")||n.dataset.carouselPage||n.dataset.carouselIndex;if(\"Escape\"!==e&&!o&&E(n)){if(n.isContentEditable||-1!==[\"TEXTAREA\",\"OPTION\",\"INPUT\",\"SELECT\",\"VIDEO\"].indexOf(n.nodeName))return}if(\"Tab\"===t.key?P(this.container,ae):S(this.container,ae),t.ctrlKey||t.altKey||t.shiftKey)return;this.emit(\"keydown\",e,t);const a=i[e];a&&\"function\"==typeof this[a]&&(t.preventDefault(),this[a]())}onResize(){const t=this.container;if(!t)return;const e=this.isCompact;t.classList.toggle(le,e),this.manageCaption(this.getSlide()),this.isCompact?this.clearIdle():this.endIdle(),this.scale(),this.emit(\"resize\")}onFocus(t){this.isTopmost()&&this.checkFocus(t)}onMousemove(t){this.prevMouseMoveEvent=t,!this.isCompact&&this.option(\"idle\")&&this.resetIdle()}onVisibilityChange(){\"visible\"===document.visibilityState?this.checkFocus():this.endIdle()}manageCloseBtn(t){const e=this.optionFor(t,\"closeButton\")||!1;if(\"auto\"===e){const t=this.plugins.Toolbar;if(t&&t.state===Zt.Ready)return}if(!e)return;if(!t.contentEl||t.closeBtnEl)return;const i=this.option(\"tpl.closeButton\");if(i){const e=n(this.localize(i));t.closeBtnEl=t.contentEl.appendChild(e),t.el&&P(t.el,\"has-close-btn\")}}manageCaption(t=void 0){var e,i;const n=\"fancybox__caption\",s=this.container;if(!s)return;S(s,de);const o=this.isCompact||this.option(\"commonCaption\"),a=!o;if(this.caption&&this.stop(this.caption),a&&this.caption&&(this.caption.remove(),this.caption=null),o&&!this.caption)for(const t of(null===(e=this.carousel)||void 0===e?void 0:e.slides)||[])t.captionEl&&(t.captionEl.remove(),t.captionEl=void 0,S(t.el,de),null===(i=t.el)||void 0===i||i.removeAttribute(\"aria-labelledby\"));if(t||(t=this.getSlide()),!t||o&&!this.isCurrentSlide(t))return;const r=t.el;let l=this.optionFor(t,\"caption\",\"\");if(!l)return void(o&&this.caption&&this.animate(this.caption,\"f-fadeOut\",(()=>{this.caption&&(this.caption.innerHTML=\"\")})));let c=null;if(a){if(c=t.captionEl||null,r&&!c){const e=n+`_${this.id}_${t.index}`;c=document.createElement(\"div\"),P(c,n),c.setAttribute(\"id\",e),t.captionEl=r.appendChild(c),P(r,de),r.setAttribute(\"aria-labelledby\",e)}}else{if(c=this.caption,c||(c=s.querySelector(\".\"+n)),!c){c=document.createElement(\"div\"),c.dataset.fancyboxCaption=\"\",P(c,n);(this.footer||s).prepend(c)}P(s,de),this.caption=c}c&&(c.innerHTML=\"\",ve(l)||\"number\"==typeof l?c.innerHTML=l+\"\":l instanceof HTMLElement&&c.appendChild(l))}checkFocus(t){this.focus(t)}focus(t){var e;if(this.ignoreFocusChange)return;const i=document.activeElement||null,n=(null==t?void 0:t.target)||null,s=this.container,o=null===(e=this.carousel)||void 0===e?void 0:e.viewport;if(!s||!o)return;if(!t&&i&&s.contains(i))return;const a=this.getSlide(),r=a&&a.state===lt.Ready?a.el:null;if(!r||r.contains(i)||s===i)return;t&&t.cancelable&&t.preventDefault(),this.ignoreFocusChange=!0;const l=Array.from(s.querySelectorAll(nt));let c=[],h=null;for(let t of l){const e=!t.offsetParent||!!t.closest('[aria-hidden=\"true\"]'),i=r&&r.contains(t),n=!o.contains(t);if(t===s||(i||n)&&!e){c.push(t);const e=t.dataset.origTabindex;void 0!==e&&e&&(t.tabIndex=parseFloat(e)),t.removeAttribute(\"data-orig-tabindex\"),!t.hasAttribute(\"autoFocus\")&&h||(h=t)}else{const e=void 0===t.dataset.origTabindex?t.getAttribute(\"tabindex\")||\"\":t.dataset.origTabindex;e&&(t.dataset.origTabindex=e),t.tabIndex=-1}}let d=null;t?(!n||c.indexOf(n)<0)&&(d=h||s,c.length&&(i===xe?d=c[0]:this.lastFocus!==s&&i!==we||(d=c[c.length-1]))):d=a&&\"image\"===a.type?s:h||s,d&&st(d),this.lastFocus=document.activeElement,this.ignoreFocusChange=!1}next(){const t=this.carousel;t&&t.pages.length>1&&t.slideNext()}prev(){const t=this.carousel;t&&t.pages.length>1&&t.slidePrev()}jumpTo(...t){this.carousel&&this.carousel.slideTo(...t)}isTopmost(){var t;return(null===(t=Oe.getInstance())||void 0===t?void 0:t.id)==this.id}animate(t=null,e=\"\",i){if(!t||!e)return void(i&&i());this.stop(t);const n=s=>{s.target===t&&t.dataset.animationName&&(t.removeEventListener(\"animationend\",n),delete t.dataset.animationName,i&&i(),S(t,e))};t.dataset.animationName=e,t.addEventListener(\"animationend\",n),P(t,e)}stop(t){t&&t.dispatchEvent(new CustomEvent(\"animationend\",{bubbles:!1,cancelable:!0,currentTarget:t}))}setContent(t,e=\"\",i=!0){if(this.isClosing())return;const s=t.el;if(!s)return;let o=null;if(E(e)?o=e:(o=n(e+\"\"),E(o)||(o=document.createElement(\"div\"),o.innerHTML=e+\"\")),[\"img\",\"picture\",\"iframe\",\"video\",\"audio\"].includes(o.nodeName.toLowerCase())){const t=document.createElement(\"div\");t.appendChild(o),o=t}E(o)&&t.filter&&!t.error&&(o=o.querySelector(t.filter)),o&&E(o)?(P(o,\"fancybox__content\"),t.id&&o.setAttribute(\"id\",t.id),s.classList.add(`has-${t.error?\"error\":t.type||\"unknown\"}`),s.prepend(o),\"none\"===o.style.display&&(o.style.display=\"\"),\"none\"===getComputedStyle(o).getPropertyValue(\"display\")&&(o.style.display=t.display||this.option(\"defaultDisplay\")||\"flex\"),t.contentEl=o,i&&this.revealContent(t),this.manageCloseBtn(t),this.manageCaption(t)):this.setError(t,\"{{ELEMENT_NOT_FOUND}}\")}revealContent(t,e){const i=t.el,n=t.contentEl;i&&n&&(this.emit(\"reveal\",t),this.hideLoading(t),t.state=lt.Opening,(e=this.isOpeningSlide(t)?void 0===e?this.optionFor(t,\"showClass\"):e:\"f-fadeIn\")?this.animate(n,e,(()=>{this.done(t)})):this.done(t))}done(t){this.isClosing()||(t.state=lt.Ready,this.emit(\"done\",t),P(t.el,\"is-done\"),this.isCurrentSlide(t)&&this.option(\"autoFocus\")&&queueMicrotask((()=>{var e;null===(e=t.panzoom)||void 0===e||e.updateControls(),this.option(\"autoFocus\")&&this.focus()})),this.isOpeningSlide(t)&&(S(this.container,he),!this.isCompact&&this.option(\"idle\")&&this.setIdle()))}isCurrentSlide(t){const e=this.getSlide();return!(!t||!e)&&e.index===t.index}isOpeningSlide(t){var e,i;return null===(null===(e=this.carousel)||void 0===e?void 0:e.prevPage)&&t&&t.index===(null===(i=this.getSlide())||void 0===i?void 0:i.index)}showLoading(t){t.state=lt.Loading;const e=t.el;if(!e)return;P(e,ce),this.emit(\"loading\",t),t.spinnerEl||setTimeout((()=>{if(!this.isClosing()&&!t.spinnerEl&&t.state===lt.Loading){let i=n(x);P(i,\"fancybox-spinner\"),t.spinnerEl=i,e.prepend(i),this.animate(i,\"f-fadeIn\")}}),250)}hideLoading(t){const e=t.el;if(!e)return;const i=t.spinnerEl;this.isClosing()?null==i||i.remove():(S(e,ce),i&&this.animate(i,\"f-fadeOut\",(()=>{i.remove()})),t.state===lt.Loading&&(this.emit(\"loaded\",t),t.state=lt.Ready))}setError(t,e){if(this.isClosing())return;const i=new Event(\"error\",{bubbles:!0,cancelable:!0});if(this.emit(\"error\",i,t),i.defaultPrevented)return;t.error=e,this.hideLoading(t),this.clearContent(t);const n=document.createElement(\"div\");n.classList.add(\"fancybox-error\"),n.innerHTML=this.localize(e||\"

{{ERROR}}

\"),this.setContent(t,n)}clearContent(t){if(void 0===t.state)return;this.emit(\"clearContent\",t),t.contentEl&&(t.contentEl.remove(),t.contentEl=void 0);const e=t.el;e&&(S(e,\"has-error\"),S(e,\"has-unknown\"),S(e,`has-${t.type||\"unknown\"}`)),t.closeBtnEl&&t.closeBtnEl.remove(),t.closeBtnEl=void 0,t.captionEl&&t.captionEl.remove(),t.captionEl=void 0,t.spinnerEl&&t.spinnerEl.remove(),t.spinnerEl=void 0}getSlide(){var t;const e=this.carousel;return(null===(t=null==e?void 0:e.pages[null==e?void 0:e.page])||void 0===t?void 0:t.slides[0])||void 0}close(t,e){if(this.isClosing())return;const i=new Event(\"shouldClose\",{bubbles:!0,cancelable:!0});if(this.emit(\"shouldClose\",i,t),i.defaultPrevented)return;t&&t.cancelable&&(t.preventDefault(),t.stopPropagation());const n=()=>{this.proceedClose(t,e)};this.startedFs&&ye&&ye.isFullscreen()?Promise.resolve(ye.exit()).then((()=>n())):n()}clearIdle(){this.idleTimer&&clearTimeout(this.idleTimer),this.idleTimer=null}setIdle(t=!1){const e=()=>{this.clearIdle(),this.idle=!0,P(this.container,\"is-idle\"),this.emit(\"setIdle\")};if(this.clearIdle(),!this.isClosing())if(t)e();else{const t=this.option(\"idle\");t&&(this.idleTimer=setTimeout(e,t))}}endIdle(){this.clearIdle(),this.idle&&!this.isClosing()&&(this.idle=!1,S(this.container,\"is-idle\"),this.emit(\"endIdle\"))}resetIdle(){this.endIdle(),this.setIdle()}toggleIdle(){this.idle?this.endIdle():this.setIdle(!0)}toggleFullscreen(){ye&&(ye.isFullscreen()?ye.exit():ye.request().then((()=>{this.startedFs=!0})))}isClosing(){return[rt.Closing,rt.CustomClosing,rt.Destroy].includes(this.state)}proceedClose(t,e){var i,n;this.state=rt.Closing,this.clearIdle(),this.detachEvents();const s=this.container,o=this.carousel,a=this.getSlide(),r=a&&this.option(\"placeFocusBack\")?a.triggerEl||this.option(\"triggerEl\"):null;if(r&&(tt(r)?st(r):r.focus()),s&&(S(s,he),P(s,\"is-closing\"),s.setAttribute(oe,\"true\"),this.option(\"animated\")&&P(s,re),s.style.pointerEvents=\"none\"),o){o.clearTransitions(),null===(i=o.panzoom)||void 0===i||i.destroy(),null===(n=o.plugins.Navigation)||void 0===n||n.detach();for(const t of o.slides){t.state=lt.Closing,this.hideLoading(t);const e=t.contentEl;e&&this.stop(e);const i=null==t?void 0:t.panzoom;i&&(i.stop(),i.detachEvents(),i.detachObserver()),this.isCurrentSlide(t)||o.emit(\"removeSlide\",t)}}Pe=window.scrollX,Ce=window.scrollY,window.addEventListener(\"scroll\",this.onScroll),this.emit(\"close\",t),this.state!==rt.CustomClosing?(void 0===e&&a&&(e=this.optionFor(a,\"hideClass\")),e&&a?(this.animate(a.contentEl,e,(()=>{o&&o.emit(\"removeSlide\",a)})),setTimeout((()=>{this.destroy()}),500)):this.destroy()):setTimeout((()=>{this.destroy()}),500)}destroy(){var t;if(this.state===rt.Destroy)return;window.removeEventListener(\"scroll\",this.onScroll),this.state=rt.Destroy,null===(t=this.carousel)||void 0===t||t.destroy();const e=this.container;e&&e.remove(),Te.delete(this.id);const i=Oe.getInstance();i?i.focus():(we&&(we.remove(),we=null),xe&&(xe.remove(),xe=null),S(document.documentElement,ee),(()=>{if(!et)return;const t=document,e=t.body;e.classList.remove(ie),e.style.setProperty(se,\"\"),t.documentElement.style.setProperty(ne,\"\")})(),this.emit(\"destroy\"))}static bind(t,e,i){if(!et)return;let n,s=\"\",o={};if(void 0===t?n=document.body:ve(t)?(n=document.body,s=t,\"object\"==typeof e&&(o=e||{})):(n=t,ve(e)&&(s=e),\"object\"==typeof i&&(o=i||{})),!n||!E(n))return;s=s||\"[data-fancybox]\";const a=Oe.openers.get(n)||new Map;a.set(s,o),Oe.openers.set(n,a),1===a.size&&n.addEventListener(\"click\",Oe.fromEvent)}static unbind(t,e){let i,n=\"\";if(ve(t)?(i=document.body,n=t):(i=t,ve(e)&&(n=e)),!i)return;const s=Oe.openers.get(i);s&&n&&s.delete(n),n&&s||(Oe.openers.delete(i),i.removeEventListener(\"click\",Oe.fromEvent))}static destroy(){let t;for(;t=Oe.getInstance();)t.destroy();for(const t of Oe.openers.keys())t.removeEventListener(\"click\",Oe.fromEvent);Oe.openers=new Map}static fromEvent(t){if(t.defaultPrevented)return;if(t.button&&0!==t.button)return;if(t.ctrlKey||t.metaKey||t.shiftKey)return;let e=t.composedPath()[0];const i=e.closest(\"[data-fancybox-trigger]\");if(i){const t=i.dataset.fancyboxTrigger||\"\",n=document.querySelectorAll(`[data-fancybox=\"${t}\"]`),s=parseInt(i.dataset.fancyboxIndex||\"\",10)||0;e=n[s]||e}if(!(e&&e instanceof Element))return;let n,s,o,a;if([...Oe.openers].reverse().find((([t,i])=>!(!t.contains(e)||![...i].reverse().find((([i,r])=>{let l=e.closest(i);return!!l&&(n=t,s=i,o=l,a=r,!0)}))))),!n||!s||!o)return;a=a||{},t.preventDefault(),e=o;let r=[],l=u({},at,a);l.event=t,l.triggerEl=e,l.delegate=i;const c=l.groupAll,h=l.groupAttr,d=h&&e?e.getAttribute(`${h}`):\"\";if((!e||d||c)&&(r=[].slice.call(n.querySelectorAll(s))),e&&!c&&(r=d?r.filter((t=>t.getAttribute(`${h}`)===d)):[e]),!r.length)return;const p=Oe.getInstance();return p&&p.options.triggerEl&&r.indexOf(p.options.triggerEl)>-1?void 0:(e&&(l.startIndex=r.indexOf(e)),Oe.fromNodes(r,l))}static fromSelector(t,e,i){let n=null,s=\"\",o={};if(ve(t)?(n=document.body,s=t,\"object\"==typeof e&&(o=e||{})):t instanceof HTMLElement&&ve(e)&&(n=t,s=e,\"object\"==typeof i&&(o=i||{})),!n||!s)return!1;const a=Oe.openers.get(n);return!!a&&(o=u({},a.get(s)||{},o),!!o&&Oe.fromNodes(Array.from(n.querySelectorAll(s)),o))}static fromNodes(t,e){e=u({},at,e||{});const i=[];for(const n of t){const t=n.dataset||{},s=t[me]||n.getAttribute(ge)||n.getAttribute(\"currentSrc\")||n.getAttribute(me)||void 0;let o;const a=e.delegate;let r;a&&i.length===e.startIndex&&(o=a instanceof HTMLImageElement?a:a.querySelector(\"img:not([aria-hidden])\")),o||(o=n instanceof HTMLImageElement?n:n.querySelector(\"img:not([aria-hidden])\")),o&&(r=o.currentSrc||o[me]||void 0,!r&&o.dataset&&(r=o.dataset.lazySrc||o.dataset[me]||void 0));const l={src:s,triggerEl:n,thumbEl:o,thumbElSrc:r,thumbSrc:r};for(const e in t){let i=t[e]+\"\";i=\"false\"!==i&&(\"true\"===i||i),l[e]=i}i.push(l)}return new Oe(i,e)}static getInstance(t){if(t)return Te.get(t);return Array.from(Te.values()).reverse().find((t=>!t.isClosing()&&t))||null}static getSlide(){var t;return(null===(t=Oe.getInstance())||void 0===t?void 0:t.getSlide())||null}static show(t=[],e={}){return new Oe(t,e)}static next(){const t=Oe.getInstance();t&&t.next()}static prev(){const t=Oe.getInstance();t&&t.prev()}static close(t=!0,...e){if(t)for(const t of Te.values())t.close(...e);else{const t=Oe.getInstance();t&&t.close(...e)}}}Object.defineProperty(Oe,\"version\",{enumerable:!0,configurable:!0,writable:!0,value:\"5.0.36\"}),Object.defineProperty(Oe,\"defaults\",{enumerable:!0,configurable:!0,writable:!0,value:at}),Object.defineProperty(Oe,\"Plugins\",{enumerable:!0,configurable:!0,writable:!0,value:te}),Object.defineProperty(Oe,\"openers\",{enumerable:!0,configurable:!0,writable:!0,value:new Map});export{Q as Carousel,Oe as Fancybox,I as Panzoom};\n","/**\n * EvEmitter v1.1.0\n * Lil' event emitter\n * MIT License\n */\n\n/* jshint unused: true, undef: true, strict: true */\n\n( function( global, factory ) {\n // universal module definition\n /* jshint strict: false */ /* globals define, module, window */\n if ( typeof define == 'function' && define.amd ) {\n // AMD - RequireJS\n define( factory );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS - Browserify, Webpack\n module.exports = factory();\n } else {\n // Browser globals\n global.EvEmitter = factory();\n }\n\n}( typeof window != 'undefined' ? window : this, function() {\n\n\"use strict\";\n\nfunction EvEmitter() {}\n\nvar proto = EvEmitter.prototype;\n\nproto.on = function( eventName, listener ) {\n if ( !eventName || !listener ) {\n return;\n }\n // set events hash\n var events = this._events = this._events || {};\n // set listeners array\n var listeners = events[ eventName ] = events[ eventName ] || [];\n // only add once\n if ( listeners.indexOf( listener ) == -1 ) {\n listeners.push( listener );\n }\n\n return this;\n};\n\nproto.once = function( eventName, listener ) {\n if ( !eventName || !listener ) {\n return;\n }\n // add event\n this.on( eventName, listener );\n // set once flag\n // set onceEvents hash\n var onceEvents = this._onceEvents = this._onceEvents || {};\n // set onceListeners object\n var onceListeners = onceEvents[ eventName ] = onceEvents[ eventName ] || {};\n // set flag\n onceListeners[ listener ] = true;\n\n return this;\n};\n\nproto.off = function( eventName, listener ) {\n var listeners = this._events && this._events[ eventName ];\n if ( !listeners || !listeners.length ) {\n return;\n }\n var index = listeners.indexOf( listener );\n if ( index != -1 ) {\n listeners.splice( index, 1 );\n }\n\n return this;\n};\n\nproto.emitEvent = function( eventName, args ) {\n var listeners = this._events && this._events[ eventName ];\n if ( !listeners || !listeners.length ) {\n return;\n }\n // copy over to avoid interference if .off() in listener\n listeners = listeners.slice(0);\n args = args || [];\n // once stuff\n var onceListeners = this._onceEvents && this._onceEvents[ eventName ];\n\n for ( var i=0; i < listeners.length; i++ ) {\n var listener = listeners[i]\n var isOnce = onceListeners && onceListeners[ listener ];\n if ( isOnce ) {\n // remove listener\n // remove before trigger to prevent recursion\n this.off( eventName, listener );\n // unset once flag\n delete onceListeners[ listener ];\n }\n // trigger listener\n listener.apply( this, args );\n }\n\n return this;\n};\n\nproto.allOff = function() {\n delete this._events;\n delete this._onceEvents;\n};\n\nreturn EvEmitter;\n\n}));\n","/*!\n * getSize v2.0.3\n * measure size of elements\n * MIT license\n */\n\n/* jshint browser: true, strict: true, undef: true, unused: true */\n/* globals console: false */\n\n( function( window, factory ) {\n /* jshint strict: false */ /* globals define, module */\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( factory );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory();\n } else {\n // browser global\n window.getSize = factory();\n }\n\n})( window, function factory() {\n'use strict';\n\n// -------------------------- helpers -------------------------- //\n\n// get a number from a string, not a percentage\nfunction getStyleSize( value ) {\n var num = parseFloat( value );\n // not a percent like '100%', and a number\n var isValid = value.indexOf('%') == -1 && !isNaN( num );\n return isValid && num;\n}\n\nfunction noop() {}\n\nvar logError = typeof console == 'undefined' ? noop :\n function( message ) {\n console.error( message );\n };\n\n// -------------------------- measurements -------------------------- //\n\nvar measurements = [\n 'paddingLeft',\n 'paddingRight',\n 'paddingTop',\n 'paddingBottom',\n 'marginLeft',\n 'marginRight',\n 'marginTop',\n 'marginBottom',\n 'borderLeftWidth',\n 'borderRightWidth',\n 'borderTopWidth',\n 'borderBottomWidth'\n];\n\nvar measurementsLength = measurements.length;\n\nfunction getZeroSize() {\n var size = {\n width: 0,\n height: 0,\n innerWidth: 0,\n innerHeight: 0,\n outerWidth: 0,\n outerHeight: 0\n };\n for ( var i=0; i < measurementsLength; i++ ) {\n var measurement = measurements[i];\n size[ measurement ] = 0;\n }\n return size;\n}\n\n// -------------------------- getStyle -------------------------- //\n\n/**\n * getStyle, get style of element, check for Firefox bug\n * https://bugzilla.mozilla.org/show_bug.cgi?id=548397\n */\nfunction getStyle( elem ) {\n var style = getComputedStyle( elem );\n if ( !style ) {\n logError( 'Style returned ' + style +\n '. Are you running this code in a hidden iframe on Firefox? ' +\n 'See https://bit.ly/getsizebug1' );\n }\n return style;\n}\n\n// -------------------------- setup -------------------------- //\n\nvar isSetup = false;\n\nvar isBoxSizeOuter;\n\n/**\n * setup\n * check isBoxSizerOuter\n * do on first getSize() rather than on page load for Firefox bug\n */\nfunction setup() {\n // setup once\n if ( isSetup ) {\n return;\n }\n isSetup = true;\n\n // -------------------------- box sizing -------------------------- //\n\n /**\n * Chrome & Safari measure the outer-width on style.width on border-box elems\n * IE11 & Firefox<29 measures the inner-width\n */\n var div = document.createElement('div');\n div.style.width = '200px';\n div.style.padding = '1px 2px 3px 4px';\n div.style.borderStyle = 'solid';\n div.style.borderWidth = '1px 2px 3px 4px';\n div.style.boxSizing = 'border-box';\n\n var body = document.body || document.documentElement;\n body.appendChild( div );\n var style = getStyle( div );\n // round value for browser zoom. desandro/masonry#928\n isBoxSizeOuter = Math.round( getStyleSize( style.width ) ) == 200;\n getSize.isBoxSizeOuter = isBoxSizeOuter;\n\n body.removeChild( div );\n}\n\n// -------------------------- getSize -------------------------- //\n\nfunction getSize( elem ) {\n setup();\n\n // use querySeletor if elem is string\n if ( typeof elem == 'string' ) {\n elem = document.querySelector( elem );\n }\n\n // do not proceed on non-objects\n if ( !elem || typeof elem != 'object' || !elem.nodeType ) {\n return;\n }\n\n var style = getStyle( elem );\n\n // if hidden, everything is 0\n if ( style.display == 'none' ) {\n return getZeroSize();\n }\n\n var size = {};\n size.width = elem.offsetWidth;\n size.height = elem.offsetHeight;\n\n var isBorderBox = size.isBorderBox = style.boxSizing == 'border-box';\n\n // get all measurements\n for ( var i=0; i < measurementsLength; i++ ) {\n var measurement = measurements[i];\n var value = style[ measurement ];\n var num = parseFloat( value );\n // any 'auto', 'medium' value will be 0\n size[ measurement ] = !isNaN( num ) ? num : 0;\n }\n\n var paddingWidth = size.paddingLeft + size.paddingRight;\n var paddingHeight = size.paddingTop + size.paddingBottom;\n var marginWidth = size.marginLeft + size.marginRight;\n var marginHeight = size.marginTop + size.marginBottom;\n var borderWidth = size.borderLeftWidth + size.borderRightWidth;\n var borderHeight = size.borderTopWidth + size.borderBottomWidth;\n\n var isBorderBoxSizeOuter = isBorderBox && isBoxSizeOuter;\n\n // overwrite width and height if we can get it from style\n var styleWidth = getStyleSize( style.width );\n if ( styleWidth !== false ) {\n size.width = styleWidth +\n // add padding and border unless it's already including it\n ( isBorderBoxSizeOuter ? 0 : paddingWidth + borderWidth );\n }\n\n var styleHeight = getStyleSize( style.height );\n if ( styleHeight !== false ) {\n size.height = styleHeight +\n // add padding and border unless it's already including it\n ( isBorderBoxSizeOuter ? 0 : paddingHeight + borderHeight );\n }\n\n size.innerWidth = size.width - ( paddingWidth + borderWidth );\n size.innerHeight = size.height - ( paddingHeight + borderHeight );\n\n size.outerWidth = size.width + marginWidth;\n size.outerHeight = size.height + marginHeight;\n\n return size;\n}\n\nreturn getSize;\n\n});\n","/**\n * matchesSelector v2.0.2\n * matchesSelector( element, '.selector' )\n * MIT license\n */\n\n/*jshint browser: true, strict: true, undef: true, unused: true */\n\n( function( window, factory ) {\n /*global define: false, module: false */\n 'use strict';\n // universal module definition\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( factory );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory();\n } else {\n // browser global\n window.matchesSelector = factory();\n }\n\n}( window, function factory() {\n 'use strict';\n\n var matchesMethod = ( function() {\n var ElemProto = window.Element.prototype;\n // check for the standard method name first\n if ( ElemProto.matches ) {\n return 'matches';\n }\n // check un-prefixed\n if ( ElemProto.matchesSelector ) {\n return 'matchesSelector';\n }\n // check vendor prefixes\n var prefixes = [ 'webkit', 'moz', 'ms', 'o' ];\n\n for ( var i=0; i < prefixes.length; i++ ) {\n var prefix = prefixes[i];\n var method = prefix + 'MatchesSelector';\n if ( ElemProto[ method ] ) {\n return method;\n }\n }\n })();\n\n return function matchesSelector( elem, selector ) {\n return elem[ matchesMethod ]( selector );\n };\n\n}));\n","/**\n * Fizzy UI utils v2.0.7\n * MIT license\n */\n\n/*jshint browser: true, undef: true, unused: true, strict: true */\n\n( function( window, factory ) {\n // universal module definition\n /*jshint strict: false */ /*globals define, module, require */\n\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n 'desandro-matches-selector/matches-selector'\n ], function( matchesSelector ) {\n return factory( window, matchesSelector );\n });\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n window,\n require('desandro-matches-selector')\n );\n } else {\n // browser global\n window.fizzyUIUtils = factory(\n window,\n window.matchesSelector\n );\n }\n\n}( window, function factory( window, matchesSelector ) {\n\n'use strict';\n\nvar utils = {};\n\n// ----- extend ----- //\n\n// extends objects\nutils.extend = function( a, b ) {\n for ( var prop in b ) {\n a[ prop ] = b[ prop ];\n }\n return a;\n};\n\n// ----- modulo ----- //\n\nutils.modulo = function( num, div ) {\n return ( ( num % div ) + div ) % div;\n};\n\n// ----- makeArray ----- //\n\nvar arraySlice = Array.prototype.slice;\n\n// turn element or nodeList into an array\nutils.makeArray = function( obj ) {\n if ( Array.isArray( obj ) ) {\n // use object if already an array\n return obj;\n }\n // return empty array if undefined or null. #6\n if ( obj === null || obj === undefined ) {\n return [];\n }\n\n var isArrayLike = typeof obj == 'object' && typeof obj.length == 'number';\n if ( isArrayLike ) {\n // convert nodeList to array\n return arraySlice.call( obj );\n }\n\n // array of single index\n return [ obj ];\n};\n\n// ----- removeFrom ----- //\n\nutils.removeFrom = function( ary, obj ) {\n var index = ary.indexOf( obj );\n if ( index != -1 ) {\n ary.splice( index, 1 );\n }\n};\n\n// ----- getParent ----- //\n\nutils.getParent = function( elem, selector ) {\n while ( elem.parentNode && elem != document.body ) {\n elem = elem.parentNode;\n if ( matchesSelector( elem, selector ) ) {\n return elem;\n }\n }\n};\n\n// ----- getQueryElement ----- //\n\n// use element as selector string\nutils.getQueryElement = function( elem ) {\n if ( typeof elem == 'string' ) {\n return document.querySelector( elem );\n }\n return elem;\n};\n\n// ----- handleEvent ----- //\n\n// enable .ontype to trigger from .addEventListener( elem, 'type' )\nutils.handleEvent = function( event ) {\n var method = 'on' + event.type;\n if ( this[ method ] ) {\n this[ method ]( event );\n }\n};\n\n// ----- filterFindElements ----- //\n\nutils.filterFindElements = function( elems, selector ) {\n // make array of elems\n elems = utils.makeArray( elems );\n var ffElems = [];\n\n elems.forEach( function( elem ) {\n // check that elem is an actual element\n if ( !( elem instanceof HTMLElement ) ) {\n return;\n }\n // add elem if no selector\n if ( !selector ) {\n ffElems.push( elem );\n return;\n }\n // filter & find items if we have a selector\n // filter\n if ( matchesSelector( elem, selector ) ) {\n ffElems.push( elem );\n }\n // find children\n var childElems = elem.querySelectorAll( selector );\n // concat childElems to filterFound array\n for ( var i=0; i < childElems.length; i++ ) {\n ffElems.push( childElems[i] );\n }\n });\n\n return ffElems;\n};\n\n// ----- debounceMethod ----- //\n\nutils.debounceMethod = function( _class, methodName, threshold ) {\n threshold = threshold || 100;\n // original method\n var method = _class.prototype[ methodName ];\n var timeoutName = methodName + 'Timeout';\n\n _class.prototype[ methodName ] = function() {\n var timeout = this[ timeoutName ];\n clearTimeout( timeout );\n\n var args = arguments;\n var _this = this;\n this[ timeoutName ] = setTimeout( function() {\n method.apply( _this, args );\n delete _this[ timeoutName ];\n }, threshold );\n };\n};\n\n// ----- docReady ----- //\n\nutils.docReady = function( callback ) {\n var readyState = document.readyState;\n if ( readyState == 'complete' || readyState == 'interactive' ) {\n // do async to allow for other scripts to run. metafizzy/flickity#441\n setTimeout( callback );\n } else {\n document.addEventListener( 'DOMContentLoaded', callback );\n }\n};\n\n// ----- htmlInit ----- //\n\n// http://jamesroberts.name/blog/2010/02/22/string-functions-for-javascript-trim-to-camel-case-to-dashed-and-to-underscore/\nutils.toDashed = function( str ) {\n return str.replace( /(.)([A-Z])/g, function( match, $1, $2 ) {\n return $1 + '-' + $2;\n }).toLowerCase();\n};\n\nvar console = window.console;\n/**\n * allow user to initialize classes via [data-namespace] or .js-namespace class\n * htmlInit( Widget, 'widgetName' )\n * options are parsed from data-namespace-options\n */\nutils.htmlInit = function( WidgetClass, namespace ) {\n utils.docReady( function() {\n var dashedNamespace = utils.toDashed( namespace );\n var dataAttr = 'data-' + dashedNamespace;\n var dataAttrElems = document.querySelectorAll( '[' + dataAttr + ']' );\n var jsDashElems = document.querySelectorAll( '.js-' + dashedNamespace );\n var elems = utils.makeArray( dataAttrElems )\n .concat( utils.makeArray( jsDashElems ) );\n var dataOptionsAttr = dataAttr + '-options';\n var jQuery = window.jQuery;\n\n elems.forEach( function( elem ) {\n var attr = elem.getAttribute( dataAttr ) ||\n elem.getAttribute( dataOptionsAttr );\n var options;\n try {\n options = attr && JSON.parse( attr );\n } catch ( error ) {\n // log error, do not initialize\n if ( console ) {\n console.error( 'Error parsing ' + dataAttr + ' on ' + elem.className +\n ': ' + error );\n }\n return;\n }\n // initialize\n var instance = new WidgetClass( elem, options );\n // make available via $().data('namespace')\n if ( jQuery ) {\n jQuery.data( elem, namespace, instance );\n }\n });\n\n });\n};\n\n// ----- ----- //\n\nreturn utils;\n\n}));\n","// Flickity.Cell\n( function( window, factory ) {\n // universal module definition\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n 'get-size/get-size',\n ], function( getSize ) {\n return factory( window, getSize );\n } );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n window,\n require('get-size')\n );\n } else {\n // browser global\n window.Flickity = window.Flickity || {};\n window.Flickity.Cell = factory(\n window,\n window.getSize\n );\n }\n\n}( window, function factory( window, getSize ) {\n\n'use strict';\n\nfunction Cell( elem, parent ) {\n this.element = elem;\n this.parent = parent;\n\n this.create();\n}\n\nvar proto = Cell.prototype;\n\nproto.create = function() {\n this.element.style.position = 'absolute';\n this.element.setAttribute( 'aria-hidden', 'true' );\n this.x = 0;\n this.shift = 0;\n this.element.style[ this.parent.originSide ] = 0;\n};\n\nproto.destroy = function() {\n // reset style\n this.unselect();\n this.element.style.position = '';\n var side = this.parent.originSide;\n this.element.style[ side ] = '';\n this.element.style.transform = '';\n this.element.removeAttribute('aria-hidden');\n};\n\nproto.getSize = function() {\n this.size = getSize( this.element );\n};\n\nproto.setPosition = function( x ) {\n this.x = x;\n this.updateTarget();\n this.renderPosition( x );\n};\n\n// setDefaultTarget v1 method, backwards compatibility, remove in v3\nproto.updateTarget = proto.setDefaultTarget = function() {\n var marginProperty = this.parent.originSide == 'left' ? 'marginLeft' : 'marginRight';\n this.target = this.x + this.size[ marginProperty ] +\n this.size.width * this.parent.cellAlign;\n};\n\nproto.renderPosition = function( x ) {\n // render position of cell with in slider\n var sideOffset = this.parent.originSide === 'left' ? 1 : -1;\n\n var adjustedX = this.parent.options.percentPosition ?\n x * sideOffset * ( this.parent.size.innerWidth / this.size.width ) :\n x * sideOffset;\n\n this.element.style.transform = 'translateX(' +\n this.parent.getPositionValue( adjustedX ) + ')';\n};\n\nproto.select = function() {\n this.element.classList.add('is-selected');\n this.element.removeAttribute('aria-hidden');\n};\n\nproto.unselect = function() {\n this.element.classList.remove('is-selected');\n this.element.setAttribute( 'aria-hidden', 'true' );\n};\n\n/**\n * @param {Integer} shift - 0, 1, or -1\n */\nproto.wrapShift = function( shift ) {\n this.shift = shift;\n this.renderPosition( this.x + this.parent.slideableWidth * shift );\n};\n\nproto.remove = function() {\n this.element.parentNode.removeChild( this.element );\n};\n\nreturn Cell;\n\n} ) );\n","// slide\n( function( window, factory ) {\n // universal module definition\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( factory );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory();\n } else {\n // browser global\n window.Flickity = window.Flickity || {};\n window.Flickity.Slide = factory();\n }\n\n}( window, function factory() {\n'use strict';\n\nfunction Slide( parent ) {\n this.parent = parent;\n this.isOriginLeft = parent.originSide == 'left';\n this.cells = [];\n this.outerWidth = 0;\n this.height = 0;\n}\n\nvar proto = Slide.prototype;\n\nproto.addCell = function( cell ) {\n this.cells.push( cell );\n this.outerWidth += cell.size.outerWidth;\n this.height = Math.max( cell.size.outerHeight, this.height );\n // first cell stuff\n if ( this.cells.length == 1 ) {\n this.x = cell.x; // x comes from first cell\n var beginMargin = this.isOriginLeft ? 'marginLeft' : 'marginRight';\n this.firstMargin = cell.size[ beginMargin ];\n }\n};\n\nproto.updateTarget = function() {\n var endMargin = this.isOriginLeft ? 'marginRight' : 'marginLeft';\n var lastCell = this.getLastCell();\n var lastMargin = lastCell ? lastCell.size[ endMargin ] : 0;\n var slideWidth = this.outerWidth - ( this.firstMargin + lastMargin );\n this.target = this.x + this.firstMargin + slideWidth * this.parent.cellAlign;\n};\n\nproto.getLastCell = function() {\n return this.cells[ this.cells.length - 1 ];\n};\n\nproto.select = function() {\n this.cells.forEach( function( cell ) {\n cell.select();\n } );\n};\n\nproto.unselect = function() {\n this.cells.forEach( function( cell ) {\n cell.unselect();\n } );\n};\n\nproto.getCellElements = function() {\n return this.cells.map( function( cell ) {\n return cell.element;\n } );\n};\n\nreturn Slide;\n\n} ) );\n","// animate\n( function( window, factory ) {\n // universal module definition\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n 'fizzy-ui-utils/utils',\n ], function( utils ) {\n return factory( window, utils );\n } );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n window,\n require('fizzy-ui-utils')\n );\n } else {\n // browser global\n window.Flickity = window.Flickity || {};\n window.Flickity.animatePrototype = factory(\n window,\n window.fizzyUIUtils\n );\n }\n\n}( window, function factory( window, utils ) {\n\n'use strict';\n\n// -------------------------- animate -------------------------- //\n\nvar proto = {};\n\nproto.startAnimation = function() {\n if ( this.isAnimating ) {\n return;\n }\n\n this.isAnimating = true;\n this.restingFrames = 0;\n this.animate();\n};\n\nproto.animate = function() {\n this.applyDragForce();\n this.applySelectedAttraction();\n\n var previousX = this.x;\n\n this.integratePhysics();\n this.positionSlider();\n this.settle( previousX );\n // animate next frame\n if ( this.isAnimating ) {\n var _this = this;\n requestAnimationFrame( function animateFrame() {\n _this.animate();\n } );\n }\n};\n\nproto.positionSlider = function() {\n var x = this.x;\n // wrap position around\n if ( this.options.wrapAround && this.cells.length > 1 ) {\n x = utils.modulo( x, this.slideableWidth );\n x -= this.slideableWidth;\n this.shiftWrapCells( x );\n }\n\n this.setTranslateX( x, this.isAnimating );\n this.dispatchScrollEvent();\n};\n\nproto.setTranslateX = function( x, is3d ) {\n x += this.cursorPosition;\n // reverse if right-to-left and using transform\n x = this.options.rightToLeft ? -x : x;\n var translateX = this.getPositionValue( x );\n // use 3D transforms for hardware acceleration on iOS\n // but use 2D when settled, for better font-rendering\n this.slider.style.transform = is3d ?\n 'translate3d(' + translateX + ',0,0)' : 'translateX(' + translateX + ')';\n};\n\nproto.dispatchScrollEvent = function() {\n var firstSlide = this.slides[0];\n if ( !firstSlide ) {\n return;\n }\n var positionX = -this.x - firstSlide.target;\n var progress = positionX / this.slidesWidth;\n this.dispatchEvent( 'scroll', null, [ progress, positionX ] );\n};\n\nproto.positionSliderAtSelected = function() {\n if ( !this.cells.length ) {\n return;\n }\n this.x = -this.selectedSlide.target;\n this.velocity = 0; // stop wobble\n this.positionSlider();\n};\n\nproto.getPositionValue = function( position ) {\n if ( this.options.percentPosition ) {\n // percent position, round to 2 digits, like 12.34%\n return ( Math.round( ( position / this.size.innerWidth ) * 10000 ) * 0.01 ) + '%';\n } else {\n // pixel positioning\n return Math.round( position ) + 'px';\n }\n};\n\nproto.settle = function( previousX ) {\n // keep track of frames where x hasn't moved\n var isResting = !this.isPointerDown &&\n Math.round( this.x * 100 ) == Math.round( previousX * 100 );\n if ( isResting ) {\n this.restingFrames++;\n }\n // stop animating if resting for 3 or more frames\n if ( this.restingFrames > 2 ) {\n this.isAnimating = false;\n delete this.isFreeScrolling;\n // render position with translateX when settled\n this.positionSlider();\n this.dispatchEvent( 'settle', null, [ this.selectedIndex ] );\n }\n};\n\nproto.shiftWrapCells = function( x ) {\n // shift before cells\n var beforeGap = this.cursorPosition + x;\n this._shiftCells( this.beforeShiftCells, beforeGap, -1 );\n // shift after cells\n var afterGap = this.size.innerWidth - ( x + this.slideableWidth + this.cursorPosition );\n this._shiftCells( this.afterShiftCells, afterGap, 1 );\n};\n\nproto._shiftCells = function( cells, gap, shift ) {\n for ( var i = 0; i < cells.length; i++ ) {\n var cell = cells[i];\n var cellShift = gap > 0 ? shift : 0;\n cell.wrapShift( cellShift );\n gap -= cell.size.outerWidth;\n }\n};\n\nproto._unshiftCells = function( cells ) {\n if ( !cells || !cells.length ) {\n return;\n }\n for ( var i = 0; i < cells.length; i++ ) {\n cells[i].wrapShift( 0 );\n }\n};\n\n// -------------------------- physics -------------------------- //\n\nproto.integratePhysics = function() {\n this.x += this.velocity;\n this.velocity *= this.getFrictionFactor();\n};\n\nproto.applyForce = function( force ) {\n this.velocity += force;\n};\n\nproto.getFrictionFactor = function() {\n return 1 - this.options[ this.isFreeScrolling ? 'freeScrollFriction' : 'friction' ];\n};\n\nproto.getRestingPosition = function() {\n // my thanks to Steven Wittens, who simplified this math greatly\n return this.x + this.velocity / ( 1 - this.getFrictionFactor() );\n};\n\nproto.applyDragForce = function() {\n if ( !this.isDraggable || !this.isPointerDown ) {\n return;\n }\n // change the position to drag position by applying force\n var dragVelocity = this.dragX - this.x;\n var dragForce = dragVelocity - this.velocity;\n this.applyForce( dragForce );\n};\n\nproto.applySelectedAttraction = function() {\n // do not attract if pointer down or no slides\n var dragDown = this.isDraggable && this.isPointerDown;\n if ( dragDown || this.isFreeScrolling || !this.slides.length ) {\n return;\n }\n var distance = this.selectedSlide.target * -1 - this.x;\n var force = distance * this.options.selectedAttraction;\n this.applyForce( force );\n};\n\nreturn proto;\n\n} ) );\n","// Flickity main\n/* eslint-disable max-params */\n( function( window, factory ) {\n // universal module definition\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n 'ev-emitter/ev-emitter',\n 'get-size/get-size',\n 'fizzy-ui-utils/utils',\n './cell',\n './slide',\n './animate',\n ], function( EvEmitter, getSize, utils, Cell, Slide, animatePrototype ) {\n return factory( window, EvEmitter, getSize, utils, Cell, Slide, animatePrototype );\n } );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n window,\n require('ev-emitter'),\n require('get-size'),\n require('fizzy-ui-utils'),\n require('./cell'),\n require('./slide'),\n require('./animate')\n );\n } else {\n // browser global\n var _Flickity = window.Flickity;\n\n window.Flickity = factory(\n window,\n window.EvEmitter,\n window.getSize,\n window.fizzyUIUtils,\n _Flickity.Cell,\n _Flickity.Slide,\n _Flickity.animatePrototype\n );\n }\n\n}( window, function factory( window, EvEmitter, getSize,\n utils, Cell, Slide, animatePrototype ) {\n\n/* eslint-enable max-params */\n'use strict';\n\n// vars\nvar jQuery = window.jQuery;\nvar getComputedStyle = window.getComputedStyle;\nvar console = window.console;\n\nfunction moveElements( elems, toElem ) {\n elems = utils.makeArray( elems );\n while ( elems.length ) {\n toElem.appendChild( elems.shift() );\n }\n}\n\n// -------------------------- Flickity -------------------------- //\n\n// globally unique identifiers\nvar GUID = 0;\n// internal store of all Flickity intances\nvar instances = {};\n\nfunction Flickity( element, options ) {\n var queryElement = utils.getQueryElement( element );\n if ( !queryElement ) {\n if ( console ) {\n console.error( 'Bad element for Flickity: ' + ( queryElement || element ) );\n }\n return;\n }\n this.element = queryElement;\n // do not initialize twice on same element\n if ( this.element.flickityGUID ) {\n var instance = instances[ this.element.flickityGUID ];\n if ( instance ) instance.option( options );\n return instance;\n }\n\n // add jQuery\n if ( jQuery ) {\n this.$element = jQuery( this.element );\n }\n // options\n this.options = utils.extend( {}, this.constructor.defaults );\n this.option( options );\n\n // kick things off\n this._create();\n}\n\nFlickity.defaults = {\n accessibility: true,\n // adaptiveHeight: false,\n cellAlign: 'center',\n // cellSelector: undefined,\n // contain: false,\n freeScrollFriction: 0.075, // friction when free-scrolling\n friction: 0.28, // friction when selecting\n namespaceJQueryEvents: true,\n // initialIndex: 0,\n percentPosition: true,\n resize: true,\n selectedAttraction: 0.025,\n setGallerySize: true,\n // watchCSS: false,\n // wrapAround: false\n};\n\n// hash of methods triggered on _create()\nFlickity.createMethods = [];\n\nvar proto = Flickity.prototype;\n// inherit EventEmitter\nutils.extend( proto, EvEmitter.prototype );\n\nproto._create = function() {\n // add id for Flickity.data\n var id = this.guid = ++GUID;\n this.element.flickityGUID = id; // expando\n instances[ id ] = this; // associate via id\n // initial properties\n this.selectedIndex = 0;\n // how many frames slider has been in same position\n this.restingFrames = 0;\n // initial physics properties\n this.x = 0;\n this.velocity = 0;\n this.originSide = this.options.rightToLeft ? 'right' : 'left';\n // create viewport & slider\n this.viewport = document.createElement('div');\n this.viewport.className = 'flickity-viewport';\n this._createSlider();\n\n if ( this.options.resize || this.options.watchCSS ) {\n window.addEventListener( 'resize', this );\n }\n\n // add listeners from on option\n for ( var eventName in this.options.on ) {\n var listener = this.options.on[ eventName ];\n this.on( eventName, listener );\n }\n\n Flickity.createMethods.forEach( function( method ) {\n this[ method ]();\n }, this );\n\n if ( this.options.watchCSS ) {\n this.watchCSS();\n } else {\n this.activate();\n }\n\n};\n\n/**\n * set options\n * @param {Object} opts - options to extend\n */\nproto.option = function( opts ) {\n utils.extend( this.options, opts );\n};\n\nproto.activate = function() {\n if ( this.isActive ) {\n return;\n }\n this.isActive = true;\n this.element.classList.add('flickity-enabled');\n if ( this.options.rightToLeft ) {\n this.element.classList.add('flickity-rtl');\n }\n\n this.getSize();\n // move initial cell elements so they can be loaded as cells\n var cellElems = this._filterFindCellElements( this.element.children );\n moveElements( cellElems, this.slider );\n this.viewport.appendChild( this.slider );\n this.element.appendChild( this.viewport );\n // get cells from children\n this.reloadCells();\n\n if ( this.options.accessibility ) {\n // allow element to focusable\n this.element.tabIndex = 0;\n // listen for key presses\n this.element.addEventListener( 'keydown', this );\n }\n\n this.emitEvent('activate');\n this.selectInitialIndex();\n // flag for initial activation, for using initialIndex\n this.isInitActivated = true;\n // ready event. #493\n this.dispatchEvent('ready');\n};\n\n// slider positions the cells\nproto._createSlider = function() {\n // slider element does all the positioning\n var slider = document.createElement('div');\n slider.className = 'flickity-slider';\n slider.style[ this.originSide ] = 0;\n this.slider = slider;\n};\n\nproto._filterFindCellElements = function( elems ) {\n return utils.filterFindElements( elems, this.options.cellSelector );\n};\n\n// goes through all children\nproto.reloadCells = function() {\n // collection of item elements\n this.cells = this._makeCells( this.slider.children );\n this.positionCells();\n this._getWrapShiftCells();\n this.setGallerySize();\n};\n\n/**\n * turn elements into Flickity.Cells\n * @param {[Array, NodeList, HTMLElement]} elems - elements to make into cells\n * @returns {Array} items - collection of new Flickity Cells\n */\nproto._makeCells = function( elems ) {\n var cellElems = this._filterFindCellElements( elems );\n\n // create new Flickity for collection\n var cells = cellElems.map( function( cellElem ) {\n return new Cell( cellElem, this );\n }, this );\n\n return cells;\n};\n\nproto.getLastCell = function() {\n return this.cells[ this.cells.length - 1 ];\n};\n\nproto.getLastSlide = function() {\n return this.slides[ this.slides.length - 1 ];\n};\n\n// positions all cells\nproto.positionCells = function() {\n // size all cells\n this._sizeCells( this.cells );\n // position all cells\n this._positionCells( 0 );\n};\n\n/**\n * position certain cells\n * @param {Integer} index - which cell to start with\n */\nproto._positionCells = function( index ) {\n index = index || 0;\n // also measure maxCellHeight\n // start 0 if positioning all cells\n this.maxCellHeight = index ? this.maxCellHeight || 0 : 0;\n var cellX = 0;\n // get cellX\n if ( index > 0 ) {\n var startCell = this.cells[ index - 1 ];\n cellX = startCell.x + startCell.size.outerWidth;\n }\n var len = this.cells.length;\n for ( var i = index; i < len; i++ ) {\n var cell = this.cells[i];\n cell.setPosition( cellX );\n cellX += cell.size.outerWidth;\n this.maxCellHeight = Math.max( cell.size.outerHeight, this.maxCellHeight );\n }\n // keep track of cellX for wrap-around\n this.slideableWidth = cellX;\n // slides\n this.updateSlides();\n // contain slides target\n this._containSlides();\n // update slidesWidth\n this.slidesWidth = len ? this.getLastSlide().target - this.slides[0].target : 0;\n};\n\n/**\n * cell.getSize() on multiple cells\n * @param {Array} cells - cells to size\n */\nproto._sizeCells = function( cells ) {\n cells.forEach( function( cell ) {\n cell.getSize();\n } );\n};\n\n// -------------------------- -------------------------- //\n\nproto.updateSlides = function() {\n this.slides = [];\n if ( !this.cells.length ) {\n return;\n }\n\n var slide = new Slide( this );\n this.slides.push( slide );\n var isOriginLeft = this.originSide == 'left';\n var nextMargin = isOriginLeft ? 'marginRight' : 'marginLeft';\n\n var canCellFit = this._getCanCellFit();\n\n this.cells.forEach( function( cell, i ) {\n // just add cell if first cell in slide\n if ( !slide.cells.length ) {\n slide.addCell( cell );\n return;\n }\n\n var slideWidth = ( slide.outerWidth - slide.firstMargin ) +\n ( cell.size.outerWidth - cell.size[ nextMargin ] );\n\n if ( canCellFit.call( this, i, slideWidth ) ) {\n slide.addCell( cell );\n } else {\n // doesn't fit, new slide\n slide.updateTarget();\n\n slide = new Slide( this );\n this.slides.push( slide );\n slide.addCell( cell );\n }\n }, this );\n // last slide\n slide.updateTarget();\n // update .selectedSlide\n this.updateSelectedSlide();\n};\n\nproto._getCanCellFit = function() {\n var groupCells = this.options.groupCells;\n if ( !groupCells ) {\n return function() {\n return false;\n };\n } else if ( typeof groupCells == 'number' ) {\n // group by number. 3 -> [0,1,2], [3,4,5], ...\n var number = parseInt( groupCells, 10 );\n return function( i ) {\n return ( i % number ) !== 0;\n };\n }\n // default, group by width of slide\n // parse '75%\n var percentMatch = typeof groupCells == 'string' &&\n groupCells.match( /^(\\d+)%$/ );\n var percent = percentMatch ? parseInt( percentMatch[1], 10 ) / 100 : 1;\n return function( i, slideWidth ) {\n /* eslint-disable-next-line no-invalid-this */\n return slideWidth <= ( this.size.innerWidth + 1 ) * percent;\n };\n};\n\n// alias _init for jQuery plugin .flickity()\nproto._init =\nproto.reposition = function() {\n this.positionCells();\n this.positionSliderAtSelected();\n};\n\nproto.getSize = function() {\n this.size = getSize( this.element );\n this.setCellAlign();\n this.cursorPosition = this.size.innerWidth * this.cellAlign;\n};\n\nvar cellAlignShorthands = {\n // cell align, then based on origin side\n center: {\n left: 0.5,\n right: 0.5,\n },\n left: {\n left: 0,\n right: 1,\n },\n right: {\n right: 0,\n left: 1,\n },\n};\n\nproto.setCellAlign = function() {\n var shorthand = cellAlignShorthands[ this.options.cellAlign ];\n this.cellAlign = shorthand ? shorthand[ this.originSide ] : this.options.cellAlign;\n};\n\nproto.setGallerySize = function() {\n if ( this.options.setGallerySize ) {\n var height = this.options.adaptiveHeight && this.selectedSlide ?\n this.selectedSlide.height : this.maxCellHeight;\n this.viewport.style.height = height + 'px';\n }\n};\n\nproto._getWrapShiftCells = function() {\n // only for wrap-around\n if ( !this.options.wrapAround ) {\n return;\n }\n // unshift previous cells\n this._unshiftCells( this.beforeShiftCells );\n this._unshiftCells( this.afterShiftCells );\n // get before cells\n // initial gap\n var gapX = this.cursorPosition;\n var cellIndex = this.cells.length - 1;\n this.beforeShiftCells = this._getGapCells( gapX, cellIndex, -1 );\n // get after cells\n // ending gap between last cell and end of gallery viewport\n gapX = this.size.innerWidth - this.cursorPosition;\n // start cloning at first cell, working forwards\n this.afterShiftCells = this._getGapCells( gapX, 0, 1 );\n};\n\nproto._getGapCells = function( gapX, cellIndex, increment ) {\n // keep adding cells until the cover the initial gap\n var cells = [];\n while ( gapX > 0 ) {\n var cell = this.cells[ cellIndex ];\n if ( !cell ) {\n break;\n }\n cells.push( cell );\n cellIndex += increment;\n gapX -= cell.size.outerWidth;\n }\n return cells;\n};\n\n// ----- contain ----- //\n\n// contain cell targets so no excess sliding\nproto._containSlides = function() {\n if ( !this.options.contain || this.options.wrapAround || !this.cells.length ) {\n return;\n }\n var isRightToLeft = this.options.rightToLeft;\n var beginMargin = isRightToLeft ? 'marginRight' : 'marginLeft';\n var endMargin = isRightToLeft ? 'marginLeft' : 'marginRight';\n var contentWidth = this.slideableWidth - this.getLastCell().size[ endMargin ];\n // content is less than gallery size\n var isContentSmaller = contentWidth < this.size.innerWidth;\n // bounds\n var beginBound = this.cursorPosition + this.cells[0].size[ beginMargin ];\n var endBound = contentWidth - this.size.innerWidth * ( 1 - this.cellAlign );\n // contain each cell target\n this.slides.forEach( function( slide ) {\n if ( isContentSmaller ) {\n // all cells fit inside gallery\n slide.target = contentWidth * this.cellAlign;\n } else {\n // contain to bounds\n slide.target = Math.max( slide.target, beginBound );\n slide.target = Math.min( slide.target, endBound );\n }\n }, this );\n};\n\n// ----- ----- //\n\n/**\n * emits events via eventEmitter and jQuery events\n * @param {String} type - name of event\n * @param {Event} event - original event\n * @param {Array} args - extra arguments\n */\nproto.dispatchEvent = function( type, event, args ) {\n var emitArgs = event ? [ event ].concat( args ) : args;\n this.emitEvent( type, emitArgs );\n\n if ( jQuery && this.$element ) {\n // default trigger with type if no event\n type += this.options.namespaceJQueryEvents ? '.flickity' : '';\n var $event = type;\n if ( event ) {\n // create jQuery event\n var jQEvent = new jQuery.Event( event );\n jQEvent.type = type;\n $event = jQEvent;\n }\n this.$element.trigger( $event, args );\n }\n};\n\n// -------------------------- select -------------------------- //\n\n/**\n * @param {Integer} index - index of the slide\n * @param {Boolean} isWrap - will wrap-around to last/first if at the end\n * @param {Boolean} isInstant - will immediately set position at selected cell\n */\nproto.select = function( index, isWrap, isInstant ) {\n if ( !this.isActive ) {\n return;\n }\n index = parseInt( index, 10 );\n this._wrapSelect( index );\n\n if ( this.options.wrapAround || isWrap ) {\n index = utils.modulo( index, this.slides.length );\n }\n // bail if invalid index\n if ( !this.slides[ index ] ) {\n return;\n }\n var prevIndex = this.selectedIndex;\n this.selectedIndex = index;\n this.updateSelectedSlide();\n if ( isInstant ) {\n this.positionSliderAtSelected();\n } else {\n this.startAnimation();\n }\n if ( this.options.adaptiveHeight ) {\n this.setGallerySize();\n }\n // events\n this.dispatchEvent( 'select', null, [ index ] );\n // change event if new index\n if ( index != prevIndex ) {\n this.dispatchEvent( 'change', null, [ index ] );\n }\n // old v1 event name, remove in v3\n this.dispatchEvent('cellSelect');\n};\n\n// wraps position for wrapAround, to move to closest slide. #113\nproto._wrapSelect = function( index ) {\n var len = this.slides.length;\n var isWrapping = this.options.wrapAround && len > 1;\n if ( !isWrapping ) {\n return index;\n }\n var wrapIndex = utils.modulo( index, len );\n // go to shortest\n var delta = Math.abs( wrapIndex - this.selectedIndex );\n var backWrapDelta = Math.abs( ( wrapIndex + len ) - this.selectedIndex );\n var forewardWrapDelta = Math.abs( ( wrapIndex - len ) - this.selectedIndex );\n if ( !this.isDragSelect && backWrapDelta < delta ) {\n index += len;\n } else if ( !this.isDragSelect && forewardWrapDelta < delta ) {\n index -= len;\n }\n // wrap position so slider is within normal area\n if ( index < 0 ) {\n this.x -= this.slideableWidth;\n } else if ( index >= len ) {\n this.x += this.slideableWidth;\n }\n};\n\nproto.previous = function( isWrap, isInstant ) {\n this.select( this.selectedIndex - 1, isWrap, isInstant );\n};\n\nproto.next = function( isWrap, isInstant ) {\n this.select( this.selectedIndex + 1, isWrap, isInstant );\n};\n\nproto.updateSelectedSlide = function() {\n var slide = this.slides[ this.selectedIndex ];\n // selectedIndex could be outside of slides, if triggered before resize()\n if ( !slide ) {\n return;\n }\n // unselect previous selected slide\n this.unselectSelectedSlide();\n // update new selected slide\n this.selectedSlide = slide;\n slide.select();\n this.selectedCells = slide.cells;\n this.selectedElements = slide.getCellElements();\n // HACK: selectedCell & selectedElement is first cell in slide, backwards compatibility\n // Remove in v3?\n this.selectedCell = slide.cells[0];\n this.selectedElement = this.selectedElements[0];\n};\n\nproto.unselectSelectedSlide = function() {\n if ( this.selectedSlide ) {\n this.selectedSlide.unselect();\n }\n};\n\nproto.selectInitialIndex = function() {\n var initialIndex = this.options.initialIndex;\n // already activated, select previous selectedIndex\n if ( this.isInitActivated ) {\n this.select( this.selectedIndex, false, true );\n return;\n }\n // select with selector string\n if ( initialIndex && typeof initialIndex == 'string' ) {\n var cell = this.queryCell( initialIndex );\n if ( cell ) {\n this.selectCell( initialIndex, false, true );\n return;\n }\n }\n\n var index = 0;\n // select with number\n if ( initialIndex && this.slides[ initialIndex ] ) {\n index = initialIndex;\n }\n // select instantly\n this.select( index, false, true );\n};\n\n/**\n * select slide from number or cell element\n * @param {[Element, Number]} value - zero-based index or element to select\n * @param {Boolean} isWrap - enables wrapping around for extra index\n * @param {Boolean} isInstant - disables slide animation\n */\nproto.selectCell = function( value, isWrap, isInstant ) {\n // get cell\n var cell = this.queryCell( value );\n if ( !cell ) {\n return;\n }\n\n var index = this.getCellSlideIndex( cell );\n this.select( index, isWrap, isInstant );\n};\n\nproto.getCellSlideIndex = function( cell ) {\n // get index of slides that has cell\n for ( var i = 0; i < this.slides.length; i++ ) {\n var slide = this.slides[i];\n var index = slide.cells.indexOf( cell );\n if ( index != -1 ) {\n return i;\n }\n }\n};\n\n// -------------------------- get cells -------------------------- //\n\n/**\n * get Flickity.Cell, given an Element\n * @param {Element} elem - matching cell element\n * @returns {Flickity.Cell} cell - matching cell\n */\nproto.getCell = function( elem ) {\n // loop through cells to get the one that matches\n for ( var i = 0; i < this.cells.length; i++ ) {\n var cell = this.cells[i];\n if ( cell.element == elem ) {\n return cell;\n }\n }\n};\n\n/**\n * get collection of Flickity.Cells, given Elements\n * @param {[Element, Array, NodeList]} elems - multiple elements\n * @returns {Array} cells - Flickity.Cells\n */\nproto.getCells = function( elems ) {\n elems = utils.makeArray( elems );\n var cells = [];\n elems.forEach( function( elem ) {\n var cell = this.getCell( elem );\n if ( cell ) {\n cells.push( cell );\n }\n }, this );\n return cells;\n};\n\n/**\n * get cell elements\n * @returns {Array} cellElems\n */\nproto.getCellElements = function() {\n return this.cells.map( function( cell ) {\n return cell.element;\n } );\n};\n\n/**\n * get parent cell from an element\n * @param {Element} elem - child element\n * @returns {Flickit.Cell} cell - parent cell\n */\nproto.getParentCell = function( elem ) {\n // first check if elem is cell\n var cell = this.getCell( elem );\n if ( cell ) {\n return cell;\n }\n // try to get parent cell elem\n elem = utils.getParent( elem, '.flickity-slider > *' );\n return this.getCell( elem );\n};\n\n/**\n * get cells adjacent to a slide\n * @param {Integer} adjCount - number of adjacent slides\n * @param {Integer} index - index of slide to start\n * @returns {Array} cells - array of Flickity.Cells\n */\nproto.getAdjacentCellElements = function( adjCount, index ) {\n if ( !adjCount ) {\n return this.selectedSlide.getCellElements();\n }\n index = index === undefined ? this.selectedIndex : index;\n\n var len = this.slides.length;\n if ( 1 + ( adjCount * 2 ) >= len ) {\n return this.getCellElements();\n }\n\n var cellElems = [];\n for ( var i = index - adjCount; i <= index + adjCount; i++ ) {\n var slideIndex = this.options.wrapAround ? utils.modulo( i, len ) : i;\n var slide = this.slides[ slideIndex ];\n if ( slide ) {\n cellElems = cellElems.concat( slide.getCellElements() );\n }\n }\n return cellElems;\n};\n\n/**\n * select slide from number or cell element\n * @param {[Element, String, Number]} selector - element, selector string, or index\n * @returns {Flickity.Cell} - matching cell\n */\nproto.queryCell = function( selector ) {\n if ( typeof selector == 'number' ) {\n // use number as index\n return this.cells[ selector ];\n }\n if ( typeof selector == 'string' ) {\n // do not select invalid selectors from hash: #123, #/. #791\n if ( selector.match( /^[#.]?[\\d/]/ ) ) {\n return;\n }\n // use string as selector, get element\n selector = this.element.querySelector( selector );\n }\n // get cell from element\n return this.getCell( selector );\n};\n\n// -------------------------- events -------------------------- //\n\nproto.uiChange = function() {\n this.emitEvent('uiChange');\n};\n\n// keep focus on element when child UI elements are clicked\nproto.childUIPointerDown = function( event ) {\n // HACK iOS does not allow touch events to bubble up?!\n if ( event.type != 'touchstart' ) {\n event.preventDefault();\n }\n this.focus();\n};\n\n// ----- resize ----- //\n\nproto.onresize = function() {\n this.watchCSS();\n this.resize();\n};\n\nutils.debounceMethod( Flickity, 'onresize', 150 );\n\nproto.resize = function() {\n // #1177 disable resize behavior when animating or dragging for iOS 15\n if ( !this.isActive || this.isAnimating || this.isDragging ) {\n return;\n }\n this.getSize();\n // wrap values\n if ( this.options.wrapAround ) {\n this.x = utils.modulo( this.x, this.slideableWidth );\n }\n this.positionCells();\n this._getWrapShiftCells();\n this.setGallerySize();\n this.emitEvent('resize');\n // update selected index for group slides, instant\n // TODO: position can be lost between groups of various numbers\n var selectedElement = this.selectedElements && this.selectedElements[0];\n this.selectCell( selectedElement, false, true );\n};\n\n// watches the :after property, activates/deactivates\nproto.watchCSS = function() {\n var watchOption = this.options.watchCSS;\n if ( !watchOption ) {\n return;\n }\n\n var afterContent = getComputedStyle( this.element, ':after' ).content;\n // activate if :after { content: 'flickity' }\n if ( afterContent.indexOf('flickity') != -1 ) {\n this.activate();\n } else {\n this.deactivate();\n }\n};\n\n// ----- keydown ----- //\n\n// go previous/next if left/right keys pressed\nproto.onkeydown = function( event ) {\n // only work if element is in focus\n var isNotFocused = document.activeElement && document.activeElement != this.element;\n if ( !this.options.accessibility || isNotFocused ) {\n return;\n }\n\n var handler = Flickity.keyboardHandlers[ event.keyCode ];\n if ( handler ) {\n handler.call( this );\n }\n};\n\nFlickity.keyboardHandlers = {\n // left arrow\n 37: function() {\n var leftMethod = this.options.rightToLeft ? 'next' : 'previous';\n this.uiChange();\n this[ leftMethod ]();\n },\n // right arrow\n 39: function() {\n var rightMethod = this.options.rightToLeft ? 'previous' : 'next';\n this.uiChange();\n this[ rightMethod ]();\n },\n};\n\n// ----- focus ----- //\n\nproto.focus = function() {\n // TODO remove scrollTo once focus options gets more support\n // https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus ...\n // #Browser_compatibility\n var prevScrollY = window.pageYOffset;\n this.element.focus({ preventScroll: true });\n // hack to fix scroll jump after focus, #76\n if ( window.pageYOffset != prevScrollY ) {\n window.scrollTo( window.pageXOffset, prevScrollY );\n }\n};\n\n// -------------------------- destroy -------------------------- //\n\n// deactivate all Flickity functionality, but keep stuff available\nproto.deactivate = function() {\n if ( !this.isActive ) {\n return;\n }\n this.element.classList.remove('flickity-enabled');\n this.element.classList.remove('flickity-rtl');\n this.unselectSelectedSlide();\n // destroy cells\n this.cells.forEach( function( cell ) {\n cell.destroy();\n } );\n this.element.removeChild( this.viewport );\n // move child elements back into element\n moveElements( this.slider.children, this.element );\n if ( this.options.accessibility ) {\n this.element.removeAttribute('tabIndex');\n this.element.removeEventListener( 'keydown', this );\n }\n // set flags\n this.isActive = false;\n this.emitEvent('deactivate');\n};\n\nproto.destroy = function() {\n this.deactivate();\n window.removeEventListener( 'resize', this );\n this.allOff();\n this.emitEvent('destroy');\n if ( jQuery && this.$element ) {\n jQuery.removeData( this.element, 'flickity' );\n }\n delete this.element.flickityGUID;\n delete instances[ this.guid ];\n};\n\n// -------------------------- prototype -------------------------- //\n\nutils.extend( proto, animatePrototype );\n\n// -------------------------- extras -------------------------- //\n\n/**\n * get Flickity instance from element\n * @param {[Element, String]} elem - element or selector string\n * @returns {Flickity} - Flickity instance\n */\nFlickity.data = function( elem ) {\n elem = utils.getQueryElement( elem );\n var id = elem && elem.flickityGUID;\n return id && instances[ id ];\n};\n\nutils.htmlInit( Flickity, 'flickity' );\n\nif ( jQuery && jQuery.bridget ) {\n jQuery.bridget( 'flickity', Flickity );\n}\n\n// set internal jQuery, for Webpack + jQuery v3, #478\nFlickity.setJQuery = function( jq ) {\n jQuery = jq;\n};\n\nFlickity.Cell = Cell;\nFlickity.Slide = Slide;\n\nreturn Flickity;\n\n} ) );\n","/*!\n * Unipointer v2.4.0\n * base class for doing one thing with pointer event\n * MIT license\n */\n\n/*jshint browser: true, undef: true, unused: true, strict: true */\n\n( function( window, factory ) {\n // universal module definition\n /* jshint strict: false */ /*global define, module, require */\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n 'ev-emitter/ev-emitter'\n ], function( EvEmitter ) {\n return factory( window, EvEmitter );\n });\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n window,\n require('ev-emitter')\n );\n } else {\n // browser global\n window.Unipointer = factory(\n window,\n window.EvEmitter\n );\n }\n\n}( window, function factory( window, EvEmitter ) {\n\n'use strict';\n\nfunction noop() {}\n\nfunction Unipointer() {}\n\n// inherit EvEmitter\nvar proto = Unipointer.prototype = Object.create( EvEmitter.prototype );\n\nproto.bindStartEvent = function( elem ) {\n this._bindStartEvent( elem, true );\n};\n\nproto.unbindStartEvent = function( elem ) {\n this._bindStartEvent( elem, false );\n};\n\n/**\n * Add or remove start event\n * @param {Boolean} isAdd - remove if falsey\n */\nproto._bindStartEvent = function( elem, isAdd ) {\n // munge isAdd, default to true\n isAdd = isAdd === undefined ? true : isAdd;\n var bindMethod = isAdd ? 'addEventListener' : 'removeEventListener';\n\n // default to mouse events\n var startEvent = 'mousedown';\n if ( 'ontouchstart' in window ) {\n // HACK prefer Touch Events as you can preventDefault on touchstart to\n // disable scroll in iOS & mobile Chrome metafizzy/flickity#1177\n startEvent = 'touchstart';\n } else if ( window.PointerEvent ) {\n // Pointer Events\n startEvent = 'pointerdown';\n }\n elem[ bindMethod ]( startEvent, this );\n};\n\n// trigger handler methods for events\nproto.handleEvent = function( event ) {\n var method = 'on' + event.type;\n if ( this[ method ] ) {\n this[ method ]( event );\n }\n};\n\n// returns the touch that we're keeping track of\nproto.getTouch = function( touches ) {\n for ( var i=0; i < touches.length; i++ ) {\n var touch = touches[i];\n if ( touch.identifier == this.pointerIdentifier ) {\n return touch;\n }\n }\n};\n\n// ----- start event ----- //\n\nproto.onmousedown = function( event ) {\n // dismiss clicks from right or middle buttons\n var button = event.button;\n if ( button && ( button !== 0 && button !== 1 ) ) {\n return;\n }\n this._pointerDown( event, event );\n};\n\nproto.ontouchstart = function( event ) {\n this._pointerDown( event, event.changedTouches[0] );\n};\n\nproto.onpointerdown = function( event ) {\n this._pointerDown( event, event );\n};\n\n/**\n * pointer start\n * @param {Event} event\n * @param {Event or Touch} pointer\n */\nproto._pointerDown = function( event, pointer ) {\n // dismiss right click and other pointers\n // button = 0 is okay, 1-4 not\n if ( event.button || this.isPointerDown ) {\n return;\n }\n\n this.isPointerDown = true;\n // save pointer identifier to match up touch events\n this.pointerIdentifier = pointer.pointerId !== undefined ?\n // pointerId for pointer events, touch.indentifier for touch events\n pointer.pointerId : pointer.identifier;\n\n this.pointerDown( event, pointer );\n};\n\nproto.pointerDown = function( event, pointer ) {\n this._bindPostStartEvents( event );\n this.emitEvent( 'pointerDown', [ event, pointer ] );\n};\n\n// hash of events to be bound after start event\nvar postStartEvents = {\n mousedown: [ 'mousemove', 'mouseup' ],\n touchstart: [ 'touchmove', 'touchend', 'touchcancel' ],\n pointerdown: [ 'pointermove', 'pointerup', 'pointercancel' ],\n};\n\nproto._bindPostStartEvents = function( event ) {\n if ( !event ) {\n return;\n }\n // get proper events to match start event\n var events = postStartEvents[ event.type ];\n // bind events to node\n events.forEach( function( eventName ) {\n window.addEventListener( eventName, this );\n }, this );\n // save these arguments\n this._boundPointerEvents = events;\n};\n\nproto._unbindPostStartEvents = function() {\n // check for _boundEvents, in case dragEnd triggered twice (old IE8 bug)\n if ( !this._boundPointerEvents ) {\n return;\n }\n this._boundPointerEvents.forEach( function( eventName ) {\n window.removeEventListener( eventName, this );\n }, this );\n\n delete this._boundPointerEvents;\n};\n\n// ----- move event ----- //\n\nproto.onmousemove = function( event ) {\n this._pointerMove( event, event );\n};\n\nproto.onpointermove = function( event ) {\n if ( event.pointerId == this.pointerIdentifier ) {\n this._pointerMove( event, event );\n }\n};\n\nproto.ontouchmove = function( event ) {\n var touch = this.getTouch( event.changedTouches );\n if ( touch ) {\n this._pointerMove( event, touch );\n }\n};\n\n/**\n * pointer move\n * @param {Event} event\n * @param {Event or Touch} pointer\n * @private\n */\nproto._pointerMove = function( event, pointer ) {\n this.pointerMove( event, pointer );\n};\n\n// public\nproto.pointerMove = function( event, pointer ) {\n this.emitEvent( 'pointerMove', [ event, pointer ] );\n};\n\n// ----- end event ----- //\n\n\nproto.onmouseup = function( event ) {\n this._pointerUp( event, event );\n};\n\nproto.onpointerup = function( event ) {\n if ( event.pointerId == this.pointerIdentifier ) {\n this._pointerUp( event, event );\n }\n};\n\nproto.ontouchend = function( event ) {\n var touch = this.getTouch( event.changedTouches );\n if ( touch ) {\n this._pointerUp( event, touch );\n }\n};\n\n/**\n * pointer up\n * @param {Event} event\n * @param {Event or Touch} pointer\n * @private\n */\nproto._pointerUp = function( event, pointer ) {\n this._pointerDone();\n this.pointerUp( event, pointer );\n};\n\n// public\nproto.pointerUp = function( event, pointer ) {\n this.emitEvent( 'pointerUp', [ event, pointer ] );\n};\n\n// ----- pointer done ----- //\n\n// triggered on pointer up & pointer cancel\nproto._pointerDone = function() {\n this._pointerReset();\n this._unbindPostStartEvents();\n this.pointerDone();\n};\n\nproto._pointerReset = function() {\n // reset properties\n this.isPointerDown = false;\n delete this.pointerIdentifier;\n};\n\nproto.pointerDone = noop;\n\n// ----- pointer cancel ----- //\n\nproto.onpointercancel = function( event ) {\n if ( event.pointerId == this.pointerIdentifier ) {\n this._pointerCancel( event, event );\n }\n};\n\nproto.ontouchcancel = function( event ) {\n var touch = this.getTouch( event.changedTouches );\n if ( touch ) {\n this._pointerCancel( event, touch );\n }\n};\n\n/**\n * pointer cancel\n * @param {Event} event\n * @param {Event or Touch} pointer\n * @private\n */\nproto._pointerCancel = function( event, pointer ) {\n this._pointerDone();\n this.pointerCancel( event, pointer );\n};\n\n// public\nproto.pointerCancel = function( event, pointer ) {\n this.emitEvent( 'pointerCancel', [ event, pointer ] );\n};\n\n// ----- ----- //\n\n// utility function for getting x/y coords from event\nUnipointer.getPointerPoint = function( pointer ) {\n return {\n x: pointer.pageX,\n y: pointer.pageY\n };\n};\n\n// ----- ----- //\n\nreturn Unipointer;\n\n}));\n","/*!\n * Unidragger v2.4.0\n * Draggable base class\n * MIT license\n */\n\n/*jshint browser: true, unused: true, undef: true, strict: true */\n\n( function( window, factory ) {\n // universal module definition\n /*jshint strict: false */ /*globals define, module, require */\n\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n 'unipointer/unipointer'\n ], function( Unipointer ) {\n return factory( window, Unipointer );\n });\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n window,\n require('unipointer')\n );\n } else {\n // browser global\n window.Unidragger = factory(\n window,\n window.Unipointer\n );\n }\n\n}( window, function factory( window, Unipointer ) {\n\n'use strict';\n\n// -------------------------- Unidragger -------------------------- //\n\nfunction Unidragger() {}\n\n// inherit Unipointer & EvEmitter\nvar proto = Unidragger.prototype = Object.create( Unipointer.prototype );\n\n// ----- bind start ----- //\n\nproto.bindHandles = function() {\n this._bindHandles( true );\n};\n\nproto.unbindHandles = function() {\n this._bindHandles( false );\n};\n\n/**\n * Add or remove start event\n * @param {Boolean} isAdd\n */\nproto._bindHandles = function( isAdd ) {\n // munge isAdd, default to true\n isAdd = isAdd === undefined ? true : isAdd;\n // bind each handle\n var bindMethod = isAdd ? 'addEventListener' : 'removeEventListener';\n var touchAction = isAdd ? this._touchActionValue : '';\n for ( var i=0; i < this.handles.length; i++ ) {\n var handle = this.handles[i];\n this._bindStartEvent( handle, isAdd );\n handle[ bindMethod ]( 'click', this );\n // touch-action: none to override browser touch gestures. metafizzy/flickity#540\n if ( window.PointerEvent ) {\n handle.style.touchAction = touchAction;\n }\n }\n};\n\n// prototype so it can be overwriteable by Flickity\nproto._touchActionValue = 'none';\n\n// ----- start event ----- //\n\n/**\n * pointer start\n * @param {Event} event\n * @param {Event or Touch} pointer\n */\nproto.pointerDown = function( event, pointer ) {\n var isOkay = this.okayPointerDown( event );\n if ( !isOkay ) {\n return;\n }\n // track start event position\n // Safari 9 overrides pageX and pageY. These values needs to be copied. flickity#842\n this.pointerDownPointer = {\n pageX: pointer.pageX,\n pageY: pointer.pageY,\n };\n\n event.preventDefault();\n this.pointerDownBlur();\n // bind move and end events\n this._bindPostStartEvents( event );\n this.emitEvent( 'pointerDown', [ event, pointer ] );\n};\n\n// nodes that have text fields\nvar cursorNodes = {\n TEXTAREA: true,\n INPUT: true,\n SELECT: true,\n OPTION: true,\n};\n\n// input types that do not have text fields\nvar clickTypes = {\n radio: true,\n checkbox: true,\n button: true,\n submit: true,\n image: true,\n file: true,\n};\n\n// dismiss inputs with text fields. flickity#403, flickity#404\nproto.okayPointerDown = function( event ) {\n var isCursorNode = cursorNodes[ event.target.nodeName ];\n var isClickType = clickTypes[ event.target.type ];\n var isOkay = !isCursorNode || isClickType;\n if ( !isOkay ) {\n this._pointerReset();\n }\n return isOkay;\n};\n\n// kludge to blur previously focused input\nproto.pointerDownBlur = function() {\n var focused = document.activeElement;\n // do not blur body for IE10, metafizzy/flickity#117\n var canBlur = focused && focused.blur && focused != document.body;\n if ( canBlur ) {\n focused.blur();\n }\n};\n\n// ----- move event ----- //\n\n/**\n * drag move\n * @param {Event} event\n * @param {Event or Touch} pointer\n */\nproto.pointerMove = function( event, pointer ) {\n var moveVector = this._dragPointerMove( event, pointer );\n this.emitEvent( 'pointerMove', [ event, pointer, moveVector ] );\n this._dragMove( event, pointer, moveVector );\n};\n\n// base pointer move logic\nproto._dragPointerMove = function( event, pointer ) {\n var moveVector = {\n x: pointer.pageX - this.pointerDownPointer.pageX,\n y: pointer.pageY - this.pointerDownPointer.pageY\n };\n // start drag if pointer has moved far enough to start drag\n if ( !this.isDragging && this.hasDragStarted( moveVector ) ) {\n this._dragStart( event, pointer );\n }\n return moveVector;\n};\n\n// condition if pointer has moved far enough to start drag\nproto.hasDragStarted = function( moveVector ) {\n return Math.abs( moveVector.x ) > 3 || Math.abs( moveVector.y ) > 3;\n};\n\n// ----- end event ----- //\n\n/**\n * pointer up\n * @param {Event} event\n * @param {Event or Touch} pointer\n */\nproto.pointerUp = function( event, pointer ) {\n this.emitEvent( 'pointerUp', [ event, pointer ] );\n this._dragPointerUp( event, pointer );\n};\n\nproto._dragPointerUp = function( event, pointer ) {\n if ( this.isDragging ) {\n this._dragEnd( event, pointer );\n } else {\n // pointer didn't move enough for drag to start\n this._staticClick( event, pointer );\n }\n};\n\n// -------------------------- drag -------------------------- //\n\n// dragStart\nproto._dragStart = function( event, pointer ) {\n this.isDragging = true;\n // prevent clicks\n this.isPreventingClicks = true;\n this.dragStart( event, pointer );\n};\n\nproto.dragStart = function( event, pointer ) {\n this.emitEvent( 'dragStart', [ event, pointer ] );\n};\n\n// dragMove\nproto._dragMove = function( event, pointer, moveVector ) {\n // do not drag if not dragging yet\n if ( !this.isDragging ) {\n return;\n }\n\n this.dragMove( event, pointer, moveVector );\n};\n\nproto.dragMove = function( event, pointer, moveVector ) {\n event.preventDefault();\n this.emitEvent( 'dragMove', [ event, pointer, moveVector ] );\n};\n\n// dragEnd\nproto._dragEnd = function( event, pointer ) {\n // set flags\n this.isDragging = false;\n // re-enable clicking async\n setTimeout( function() {\n delete this.isPreventingClicks;\n }.bind( this ) );\n\n this.dragEnd( event, pointer );\n};\n\nproto.dragEnd = function( event, pointer ) {\n this.emitEvent( 'dragEnd', [ event, pointer ] );\n};\n\n// ----- onclick ----- //\n\n// handle all clicks and prevent clicks when dragging\nproto.onclick = function( event ) {\n if ( this.isPreventingClicks ) {\n event.preventDefault();\n }\n};\n\n// ----- staticClick ----- //\n\n// triggered after pointer down & up with no/tiny movement\nproto._staticClick = function( event, pointer ) {\n // ignore emulated mouse up clicks\n if ( this.isIgnoringMouseUp && event.type == 'mouseup' ) {\n return;\n }\n\n this.staticClick( event, pointer );\n\n // set flag for emulated clicks 300ms after touchend\n if ( event.type != 'mouseup' ) {\n this.isIgnoringMouseUp = true;\n // reset flag after 300ms\n setTimeout( function() {\n delete this.isIgnoringMouseUp;\n }.bind( this ), 400 );\n }\n};\n\nproto.staticClick = function( event, pointer ) {\n this.emitEvent( 'staticClick', [ event, pointer ] );\n};\n\n// ----- utils ----- //\n\nUnidragger.getPointerPoint = Unipointer.getPointerPoint;\n\n// ----- ----- //\n\nreturn Unidragger;\n\n}));\n","// drag\n( function( window, factory ) {\n // universal module definition\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n './flickity',\n 'unidragger/unidragger',\n 'fizzy-ui-utils/utils',\n ], function( Flickity, Unidragger, utils ) {\n return factory( window, Flickity, Unidragger, utils );\n } );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n window,\n require('./flickity'),\n require('unidragger'),\n require('fizzy-ui-utils')\n );\n } else {\n // browser global\n window.Flickity = factory(\n window,\n window.Flickity,\n window.Unidragger,\n window.fizzyUIUtils\n );\n }\n\n}( window, function factory( window, Flickity, Unidragger, utils ) {\n\n'use strict';\n\n// ----- defaults ----- //\n\nutils.extend( Flickity.defaults, {\n draggable: '>1',\n dragThreshold: 3,\n} );\n\n// ----- create ----- //\n\nFlickity.createMethods.push('_createDrag');\n\n// -------------------------- drag prototype -------------------------- //\n\nvar proto = Flickity.prototype;\nutils.extend( proto, Unidragger.prototype );\nproto._touchActionValue = 'pan-y';\n\n// -------------------------- -------------------------- //\n\nproto._createDrag = function() {\n this.on( 'activate', this.onActivateDrag );\n this.on( 'uiChange', this._uiChangeDrag );\n this.on( 'deactivate', this.onDeactivateDrag );\n this.on( 'cellChange', this.updateDraggable );\n // TODO updateDraggable on resize? if groupCells & slides change\n};\n\nproto.onActivateDrag = function() {\n this.handles = [ this.viewport ];\n this.bindHandles();\n this.updateDraggable();\n};\n\nproto.onDeactivateDrag = function() {\n this.unbindHandles();\n this.element.classList.remove('is-draggable');\n};\n\nproto.updateDraggable = function() {\n // disable dragging if less than 2 slides. #278\n if ( this.options.draggable == '>1' ) {\n this.isDraggable = this.slides.length > 1;\n } else {\n this.isDraggable = this.options.draggable;\n }\n if ( this.isDraggable ) {\n this.element.classList.add('is-draggable');\n } else {\n this.element.classList.remove('is-draggable');\n }\n};\n\n// backwards compatibility\nproto.bindDrag = function() {\n this.options.draggable = true;\n this.updateDraggable();\n};\n\nproto.unbindDrag = function() {\n this.options.draggable = false;\n this.updateDraggable();\n};\n\nproto._uiChangeDrag = function() {\n delete this.isFreeScrolling;\n};\n\n// -------------------------- pointer events -------------------------- //\n\nproto.pointerDown = function( event, pointer ) {\n if ( !this.isDraggable ) {\n this._pointerDownDefault( event, pointer );\n return;\n }\n var isOkay = this.okayPointerDown( event );\n if ( !isOkay ) {\n return;\n }\n\n this._pointerDownPreventDefault( event );\n this.pointerDownFocus( event );\n // blur\n if ( document.activeElement != this.element ) {\n // do not blur if already focused\n this.pointerDownBlur();\n }\n\n // stop if it was moving\n this.dragX = this.x;\n this.viewport.classList.add('is-pointer-down');\n // track scrolling\n this.pointerDownScroll = getScrollPosition();\n window.addEventListener( 'scroll', this );\n\n this._pointerDownDefault( event, pointer );\n};\n\n// default pointerDown logic, used for staticClick\nproto._pointerDownDefault = function( event, pointer ) {\n // track start event position\n // Safari 9 overrides pageX and pageY. These values needs to be copied. #779\n this.pointerDownPointer = {\n pageX: pointer.pageX,\n pageY: pointer.pageY,\n };\n // bind move and end events\n this._bindPostStartEvents( event );\n this.dispatchEvent( 'pointerDown', event, [ pointer ] );\n};\n\nvar focusNodes = {\n INPUT: true,\n TEXTAREA: true,\n SELECT: true,\n};\n\nproto.pointerDownFocus = function( event ) {\n var isFocusNode = focusNodes[ event.target.nodeName ];\n if ( !isFocusNode ) {\n this.focus();\n }\n};\n\nproto._pointerDownPreventDefault = function( event ) {\n var isTouchStart = event.type == 'touchstart';\n var isTouchPointer = event.pointerType == 'touch';\n var isFocusNode = focusNodes[ event.target.nodeName ];\n if ( !isTouchStart && !isTouchPointer && !isFocusNode ) {\n event.preventDefault();\n }\n};\n\n// ----- move ----- //\n\nproto.hasDragStarted = function( moveVector ) {\n return Math.abs( moveVector.x ) > this.options.dragThreshold;\n};\n\n// ----- up ----- //\n\nproto.pointerUp = function( event, pointer ) {\n delete this.isTouchScrolling;\n this.viewport.classList.remove('is-pointer-down');\n this.dispatchEvent( 'pointerUp', event, [ pointer ] );\n this._dragPointerUp( event, pointer );\n};\n\nproto.pointerDone = function() {\n window.removeEventListener( 'scroll', this );\n delete this.pointerDownScroll;\n};\n\n// -------------------------- dragging -------------------------- //\n\nproto.dragStart = function( event, pointer ) {\n if ( !this.isDraggable ) {\n return;\n }\n this.dragStartPosition = this.x;\n this.startAnimation();\n window.removeEventListener( 'scroll', this );\n this.dispatchEvent( 'dragStart', event, [ pointer ] );\n};\n\nproto.pointerMove = function( event, pointer ) {\n var moveVector = this._dragPointerMove( event, pointer );\n this.dispatchEvent( 'pointerMove', event, [ pointer, moveVector ] );\n this._dragMove( event, pointer, moveVector );\n};\n\nproto.dragMove = function( event, pointer, moveVector ) {\n if ( !this.isDraggable ) {\n return;\n }\n event.preventDefault();\n\n this.previousDragX = this.dragX;\n // reverse if right-to-left\n var direction = this.options.rightToLeft ? -1 : 1;\n if ( this.options.wrapAround ) {\n // wrap around move. #589\n moveVector.x %= this.slideableWidth;\n }\n var dragX = this.dragStartPosition + moveVector.x * direction;\n\n if ( !this.options.wrapAround && this.slides.length ) {\n // slow drag\n var originBound = Math.max( -this.slides[0].target, this.dragStartPosition );\n dragX = dragX > originBound ? ( dragX + originBound ) * 0.5 : dragX;\n var endBound = Math.min( -this.getLastSlide().target, this.dragStartPosition );\n dragX = dragX < endBound ? ( dragX + endBound ) * 0.5 : dragX;\n }\n\n this.dragX = dragX;\n\n this.dragMoveTime = new Date();\n this.dispatchEvent( 'dragMove', event, [ pointer, moveVector ] );\n};\n\nproto.dragEnd = function( event, pointer ) {\n if ( !this.isDraggable ) {\n return;\n }\n if ( this.options.freeScroll ) {\n this.isFreeScrolling = true;\n }\n // set selectedIndex based on where flick will end up\n var index = this.dragEndRestingSelect();\n\n if ( this.options.freeScroll && !this.options.wrapAround ) {\n // if free-scroll & not wrap around\n // do not free-scroll if going outside of bounding slides\n // so bounding slides can attract slider, and keep it in bounds\n var restingX = this.getRestingPosition();\n this.isFreeScrolling = -restingX > this.slides[0].target &&\n -restingX < this.getLastSlide().target;\n } else if ( !this.options.freeScroll && index == this.selectedIndex ) {\n // boost selection if selected index has not changed\n index += this.dragEndBoostSelect();\n }\n delete this.previousDragX;\n // apply selection\n // TODO refactor this, selecting here feels weird\n // HACK, set flag so dragging stays in correct direction\n this.isDragSelect = this.options.wrapAround;\n this.select( index );\n delete this.isDragSelect;\n this.dispatchEvent( 'dragEnd', event, [ pointer ] );\n};\n\nproto.dragEndRestingSelect = function() {\n var restingX = this.getRestingPosition();\n // how far away from selected slide\n var distance = Math.abs( this.getSlideDistance( -restingX, this.selectedIndex ) );\n // get closet resting going up and going down\n var positiveResting = this._getClosestResting( restingX, distance, 1 );\n var negativeResting = this._getClosestResting( restingX, distance, -1 );\n // use closer resting for wrap-around\n var index = positiveResting.distance < negativeResting.distance ?\n positiveResting.index : negativeResting.index;\n return index;\n};\n\n/**\n * given resting X and distance to selected cell\n * get the distance and index of the closest cell\n * @param {Number} restingX - estimated post-flick resting position\n * @param {Number} distance - distance to selected cell\n * @param {Integer} increment - +1 or -1, going up or down\n * @returns {Object} - { distance: {Number}, index: {Integer} }\n */\nproto._getClosestResting = function( restingX, distance, increment ) {\n var index = this.selectedIndex;\n var minDistance = Infinity;\n var condition = this.options.contain && !this.options.wrapAround ?\n // if contain, keep going if distance is equal to minDistance\n function( dist, minDist ) {\n return dist <= minDist;\n } : function( dist, minDist ) {\n return dist < minDist;\n };\n while ( condition( distance, minDistance ) ) {\n // measure distance to next cell\n index += increment;\n minDistance = distance;\n distance = this.getSlideDistance( -restingX, index );\n if ( distance === null ) {\n break;\n }\n distance = Math.abs( distance );\n }\n return {\n distance: minDistance,\n // selected was previous index\n index: index - increment,\n };\n};\n\n/**\n * measure distance between x and a slide target\n * @param {Number} x - horizontal position\n * @param {Integer} index - slide index\n * @returns {Number} - slide distance\n */\nproto.getSlideDistance = function( x, index ) {\n var len = this.slides.length;\n // wrap around if at least 2 slides\n var isWrapAround = this.options.wrapAround && len > 1;\n var slideIndex = isWrapAround ? utils.modulo( index, len ) : index;\n var slide = this.slides[ slideIndex ];\n if ( !slide ) {\n return null;\n }\n // add distance for wrap-around slides\n var wrap = isWrapAround ? this.slideableWidth * Math.floor( index/len ) : 0;\n return x - ( slide.target + wrap );\n};\n\nproto.dragEndBoostSelect = function() {\n // do not boost if no previousDragX or dragMoveTime\n if ( this.previousDragX === undefined || !this.dragMoveTime ||\n // or if drag was held for 100 ms\n new Date() - this.dragMoveTime > 100 ) {\n return 0;\n }\n\n var distance = this.getSlideDistance( -this.dragX, this.selectedIndex );\n var delta = this.previousDragX - this.dragX;\n if ( distance > 0 && delta > 0 ) {\n // boost to next if moving towards the right, and positive velocity\n return 1;\n } else if ( distance < 0 && delta < 0 ) {\n // boost to previous if moving towards the left, and negative velocity\n return -1;\n }\n return 0;\n};\n\n// ----- staticClick ----- //\n\nproto.staticClick = function( event, pointer ) {\n // get clickedCell, if cell was clicked\n var clickedCell = this.getParentCell( event.target );\n var cellElem = clickedCell && clickedCell.element;\n var cellIndex = clickedCell && this.cells.indexOf( clickedCell );\n this.dispatchEvent( 'staticClick', event, [ pointer, cellElem, cellIndex ] );\n};\n\n// ----- scroll ----- //\n\nproto.onscroll = function() {\n var scroll = getScrollPosition();\n var scrollMoveX = this.pointerDownScroll.x - scroll.x;\n var scrollMoveY = this.pointerDownScroll.y - scroll.y;\n // cancel click/tap if scroll is too much\n if ( Math.abs( scrollMoveX ) > 3 || Math.abs( scrollMoveY ) > 3 ) {\n this._pointerDone();\n }\n};\n\n// ----- utils ----- //\n\nfunction getScrollPosition() {\n return {\n x: window.pageXOffset,\n y: window.pageYOffset,\n };\n}\n\n// ----- ----- //\n\nreturn Flickity;\n\n} ) );\n","// prev/next buttons\n( function( window, factory ) {\n // universal module definition\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n './flickity',\n 'unipointer/unipointer',\n 'fizzy-ui-utils/utils',\n ], function( Flickity, Unipointer, utils ) {\n return factory( window, Flickity, Unipointer, utils );\n } );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n window,\n require('./flickity'),\n require('unipointer'),\n require('fizzy-ui-utils')\n );\n } else {\n // browser global\n factory(\n window,\n window.Flickity,\n window.Unipointer,\n window.fizzyUIUtils\n );\n }\n\n}( window, function factory( window, Flickity, Unipointer, utils ) {\n'use strict';\n\nvar svgURI = 'http://www.w3.org/2000/svg';\n\n// -------------------------- PrevNextButton -------------------------- //\n\nfunction PrevNextButton( direction, parent ) {\n this.direction = direction;\n this.parent = parent;\n this._create();\n}\n\nPrevNextButton.prototype = Object.create( Unipointer.prototype );\n\nPrevNextButton.prototype._create = function() {\n // properties\n this.isEnabled = true;\n this.isPrevious = this.direction == -1;\n var leftDirection = this.parent.options.rightToLeft ? 1 : -1;\n this.isLeft = this.direction == leftDirection;\n\n var element = this.element = document.createElement('button');\n element.className = 'flickity-button flickity-prev-next-button';\n element.className += this.isPrevious ? ' previous' : ' next';\n // prevent button from submitting form http://stackoverflow.com/a/10836076/182183\n element.setAttribute( 'type', 'button' );\n // init as disabled\n this.disable();\n\n element.setAttribute( 'aria-label', this.isPrevious ? 'Previous' : 'Next' );\n\n // create arrow\n var svg = this.createSVG();\n element.appendChild( svg );\n // events\n this.parent.on( 'select', this.update.bind( this ) );\n this.on( 'pointerDown', this.parent.childUIPointerDown.bind( this.parent ) );\n};\n\nPrevNextButton.prototype.activate = function() {\n this.bindStartEvent( this.element );\n this.element.addEventListener( 'click', this );\n // add to DOM\n this.parent.element.appendChild( this.element );\n};\n\nPrevNextButton.prototype.deactivate = function() {\n // remove from DOM\n this.parent.element.removeChild( this.element );\n // click events\n this.unbindStartEvent( this.element );\n this.element.removeEventListener( 'click', this );\n};\n\nPrevNextButton.prototype.createSVG = function() {\n var svg = document.createElementNS( svgURI, 'svg' );\n svg.setAttribute( 'class', 'flickity-button-icon' );\n svg.setAttribute( 'viewBox', '0 0 100 100' );\n var path = document.createElementNS( svgURI, 'path' );\n var pathMovements = getArrowMovements( this.parent.options.arrowShape );\n path.setAttribute( 'd', pathMovements );\n path.setAttribute( 'class', 'arrow' );\n // rotate arrow\n if ( !this.isLeft ) {\n path.setAttribute( 'transform', 'translate(100, 100) rotate(180) ' );\n }\n svg.appendChild( path );\n return svg;\n};\n\n// get SVG path movmement\nfunction getArrowMovements( shape ) {\n // use shape as movement if string\n if ( typeof shape == 'string' ) {\n return shape;\n }\n // create movement string\n return 'M ' + shape.x0 + ',50' +\n ' L ' + shape.x1 + ',' + ( shape.y1 + 50 ) +\n ' L ' + shape.x2 + ',' + ( shape.y2 + 50 ) +\n ' L ' + shape.x3 + ',50 ' +\n ' L ' + shape.x2 + ',' + ( 50 - shape.y2 ) +\n ' L ' + shape.x1 + ',' + ( 50 - shape.y1 ) +\n ' Z';\n}\n\nPrevNextButton.prototype.handleEvent = utils.handleEvent;\n\nPrevNextButton.prototype.onclick = function() {\n if ( !this.isEnabled ) {\n return;\n }\n this.parent.uiChange();\n var method = this.isPrevious ? 'previous' : 'next';\n this.parent[ method ]();\n};\n\n// ----- ----- //\n\nPrevNextButton.prototype.enable = function() {\n if ( this.isEnabled ) {\n return;\n }\n this.element.disabled = false;\n this.isEnabled = true;\n};\n\nPrevNextButton.prototype.disable = function() {\n if ( !this.isEnabled ) {\n return;\n }\n this.element.disabled = true;\n this.isEnabled = false;\n};\n\nPrevNextButton.prototype.update = function() {\n // index of first or last slide, if previous or next\n var slides = this.parent.slides;\n // enable is wrapAround and at least 2 slides\n if ( this.parent.options.wrapAround && slides.length > 1 ) {\n this.enable();\n return;\n }\n var lastIndex = slides.length ? slides.length - 1 : 0;\n var boundIndex = this.isPrevious ? 0 : lastIndex;\n var method = this.parent.selectedIndex == boundIndex ? 'disable' : 'enable';\n this[ method ]();\n};\n\nPrevNextButton.prototype.destroy = function() {\n this.deactivate();\n this.allOff();\n};\n\n// -------------------------- Flickity prototype -------------------------- //\n\nutils.extend( Flickity.defaults, {\n prevNextButtons: true,\n arrowShape: {\n x0: 10,\n x1: 60, y1: 50,\n x2: 70, y2: 40,\n x3: 30,\n },\n} );\n\nFlickity.createMethods.push('_createPrevNextButtons');\nvar proto = Flickity.prototype;\n\nproto._createPrevNextButtons = function() {\n if ( !this.options.prevNextButtons ) {\n return;\n }\n\n this.prevButton = new PrevNextButton( -1, this );\n this.nextButton = new PrevNextButton( 1, this );\n\n this.on( 'activate', this.activatePrevNextButtons );\n};\n\nproto.activatePrevNextButtons = function() {\n this.prevButton.activate();\n this.nextButton.activate();\n this.on( 'deactivate', this.deactivatePrevNextButtons );\n};\n\nproto.deactivatePrevNextButtons = function() {\n this.prevButton.deactivate();\n this.nextButton.deactivate();\n this.off( 'deactivate', this.deactivatePrevNextButtons );\n};\n\n// -------------------------- -------------------------- //\n\nFlickity.PrevNextButton = PrevNextButton;\n\nreturn Flickity;\n\n} ) );\n","// page dots\n( function( window, factory ) {\n // universal module definition\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n './flickity',\n 'unipointer/unipointer',\n 'fizzy-ui-utils/utils',\n ], function( Flickity, Unipointer, utils ) {\n return factory( window, Flickity, Unipointer, utils );\n } );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n window,\n require('./flickity'),\n require('unipointer'),\n require('fizzy-ui-utils')\n );\n } else {\n // browser global\n factory(\n window,\n window.Flickity,\n window.Unipointer,\n window.fizzyUIUtils\n );\n }\n\n}( window, function factory( window, Flickity, Unipointer, utils ) {\n\n// -------------------------- PageDots -------------------------- //\n\n'use strict';\n\nfunction PageDots( parent ) {\n this.parent = parent;\n this._create();\n}\n\nPageDots.prototype = Object.create( Unipointer.prototype );\n\nPageDots.prototype._create = function() {\n // create holder element\n this.holder = document.createElement('ol');\n this.holder.className = 'flickity-page-dots';\n // create dots, array of elements\n this.dots = [];\n // events\n this.handleClick = this.onClick.bind( this );\n this.on( 'pointerDown', this.parent.childUIPointerDown.bind( this.parent ) );\n};\n\nPageDots.prototype.activate = function() {\n this.setDots();\n this.holder.addEventListener( 'click', this.handleClick );\n this.bindStartEvent( this.holder );\n // add to DOM\n this.parent.element.appendChild( this.holder );\n};\n\nPageDots.prototype.deactivate = function() {\n this.holder.removeEventListener( 'click', this.handleClick );\n this.unbindStartEvent( this.holder );\n // remove from DOM\n this.parent.element.removeChild( this.holder );\n};\n\nPageDots.prototype.setDots = function() {\n // get difference between number of slides and number of dots\n var delta = this.parent.slides.length - this.dots.length;\n if ( delta > 0 ) {\n this.addDots( delta );\n } else if ( delta < 0 ) {\n this.removeDots( -delta );\n }\n};\n\nPageDots.prototype.addDots = function( count ) {\n var fragment = document.createDocumentFragment();\n var newDots = [];\n var length = this.dots.length;\n var max = length + count;\n\n for ( var i = length; i < max; i++ ) {\n var dot = document.createElement('li');\n dot.className = 'dot';\n dot.setAttribute( 'aria-label', 'Page dot ' + ( i + 1 ) );\n fragment.appendChild( dot );\n newDots.push( dot );\n }\n\n this.holder.appendChild( fragment );\n this.dots = this.dots.concat( newDots );\n};\n\nPageDots.prototype.removeDots = function( count ) {\n // remove from this.dots collection\n var removeDots = this.dots.splice( this.dots.length - count, count );\n // remove from DOM\n removeDots.forEach( function( dot ) {\n this.holder.removeChild( dot );\n }, this );\n};\n\nPageDots.prototype.updateSelected = function() {\n // remove selected class on previous\n if ( this.selectedDot ) {\n this.selectedDot.className = 'dot';\n this.selectedDot.removeAttribute('aria-current');\n }\n // don't proceed if no dots\n if ( !this.dots.length ) {\n return;\n }\n this.selectedDot = this.dots[ this.parent.selectedIndex ];\n this.selectedDot.className = 'dot is-selected';\n this.selectedDot.setAttribute( 'aria-current', 'step' );\n};\n\nPageDots.prototype.onTap = // old method name, backwards-compatible\nPageDots.prototype.onClick = function( event ) {\n var target = event.target;\n // only care about dot clicks\n if ( target.nodeName != 'LI' ) {\n return;\n }\n\n this.parent.uiChange();\n var index = this.dots.indexOf( target );\n this.parent.select( index );\n};\n\nPageDots.prototype.destroy = function() {\n this.deactivate();\n this.allOff();\n};\n\nFlickity.PageDots = PageDots;\n\n// -------------------------- Flickity -------------------------- //\n\nutils.extend( Flickity.defaults, {\n pageDots: true,\n} );\n\nFlickity.createMethods.push('_createPageDots');\n\nvar proto = Flickity.prototype;\n\nproto._createPageDots = function() {\n if ( !this.options.pageDots ) {\n return;\n }\n this.pageDots = new PageDots( this );\n // events\n this.on( 'activate', this.activatePageDots );\n this.on( 'select', this.updateSelectedPageDots );\n this.on( 'cellChange', this.updatePageDots );\n this.on( 'resize', this.updatePageDots );\n this.on( 'deactivate', this.deactivatePageDots );\n};\n\nproto.activatePageDots = function() {\n this.pageDots.activate();\n};\n\nproto.updateSelectedPageDots = function() {\n this.pageDots.updateSelected();\n};\n\nproto.updatePageDots = function() {\n this.pageDots.setDots();\n};\n\nproto.deactivatePageDots = function() {\n this.pageDots.deactivate();\n};\n\n// ----- ----- //\n\nFlickity.PageDots = PageDots;\n\nreturn Flickity;\n\n} ) );\n","// player & autoPlay\n( function( window, factory ) {\n // universal module definition\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n 'ev-emitter/ev-emitter',\n 'fizzy-ui-utils/utils',\n './flickity',\n ], function( EvEmitter, utils, Flickity ) {\n return factory( EvEmitter, utils, Flickity );\n } );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n require('ev-emitter'),\n require('fizzy-ui-utils'),\n require('./flickity')\n );\n } else {\n // browser global\n factory(\n window.EvEmitter,\n window.fizzyUIUtils,\n window.Flickity\n );\n }\n\n}( window, function factory( EvEmitter, utils, Flickity ) {\n\n'use strict';\n\n// -------------------------- Player -------------------------- //\n\nfunction Player( parent ) {\n this.parent = parent;\n this.state = 'stopped';\n // visibility change event handler\n this.onVisibilityChange = this.visibilityChange.bind( this );\n this.onVisibilityPlay = this.visibilityPlay.bind( this );\n}\n\nPlayer.prototype = Object.create( EvEmitter.prototype );\n\n// start play\nPlayer.prototype.play = function() {\n if ( this.state == 'playing' ) {\n return;\n }\n // do not play if page is hidden, start playing when page is visible\n var isPageHidden = document.hidden;\n if ( isPageHidden ) {\n document.addEventListener( 'visibilitychange', this.onVisibilityPlay );\n return;\n }\n\n this.state = 'playing';\n // listen to visibility change\n document.addEventListener( 'visibilitychange', this.onVisibilityChange );\n // start ticking\n this.tick();\n};\n\nPlayer.prototype.tick = function() {\n // do not tick if not playing\n if ( this.state != 'playing' ) {\n return;\n }\n\n var time = this.parent.options.autoPlay;\n // default to 3 seconds\n time = typeof time == 'number' ? time : 3000;\n var _this = this;\n // HACK: reset ticks if stopped and started within interval\n this.clear();\n this.timeout = setTimeout( function() {\n _this.parent.next( true );\n _this.tick();\n }, time );\n};\n\nPlayer.prototype.stop = function() {\n this.state = 'stopped';\n this.clear();\n // remove visibility change event\n document.removeEventListener( 'visibilitychange', this.onVisibilityChange );\n};\n\nPlayer.prototype.clear = function() {\n clearTimeout( this.timeout );\n};\n\nPlayer.prototype.pause = function() {\n if ( this.state == 'playing' ) {\n this.state = 'paused';\n this.clear();\n }\n};\n\nPlayer.prototype.unpause = function() {\n // re-start play if paused\n if ( this.state == 'paused' ) {\n this.play();\n }\n};\n\n// pause if page visibility is hidden, unpause if visible\nPlayer.prototype.visibilityChange = function() {\n var isPageHidden = document.hidden;\n this[ isPageHidden ? 'pause' : 'unpause' ]();\n};\n\nPlayer.prototype.visibilityPlay = function() {\n this.play();\n document.removeEventListener( 'visibilitychange', this.onVisibilityPlay );\n};\n\n// -------------------------- Flickity -------------------------- //\n\nutils.extend( Flickity.defaults, {\n pauseAutoPlayOnHover: true,\n} );\n\nFlickity.createMethods.push('_createPlayer');\nvar proto = Flickity.prototype;\n\nproto._createPlayer = function() {\n this.player = new Player( this );\n\n this.on( 'activate', this.activatePlayer );\n this.on( 'uiChange', this.stopPlayer );\n this.on( 'pointerDown', this.stopPlayer );\n this.on( 'deactivate', this.deactivatePlayer );\n};\n\nproto.activatePlayer = function() {\n if ( !this.options.autoPlay ) {\n return;\n }\n this.player.play();\n this.element.addEventListener( 'mouseenter', this );\n};\n\n// Player API, don't hate the ... thanks I know where the door is\n\nproto.playPlayer = function() {\n this.player.play();\n};\n\nproto.stopPlayer = function() {\n this.player.stop();\n};\n\nproto.pausePlayer = function() {\n this.player.pause();\n};\n\nproto.unpausePlayer = function() {\n this.player.unpause();\n};\n\nproto.deactivatePlayer = function() {\n this.player.stop();\n this.element.removeEventListener( 'mouseenter', this );\n};\n\n// ----- mouseenter/leave ----- //\n\n// pause auto-play on hover\nproto.onmouseenter = function() {\n if ( !this.options.pauseAutoPlayOnHover ) {\n return;\n }\n this.player.pause();\n this.element.addEventListener( 'mouseleave', this );\n};\n\n// resume auto-play on hover off\nproto.onmouseleave = function() {\n this.player.unpause();\n this.element.removeEventListener( 'mouseleave', this );\n};\n\n// ----- ----- //\n\nFlickity.Player = Player;\n\nreturn Flickity;\n\n} ) );\n","// add, remove cell\n( function( window, factory ) {\n // universal module definition\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n './flickity',\n 'fizzy-ui-utils/utils',\n ], function( Flickity, utils ) {\n return factory( window, Flickity, utils );\n } );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n window,\n require('./flickity'),\n require('fizzy-ui-utils')\n );\n } else {\n // browser global\n factory(\n window,\n window.Flickity,\n window.fizzyUIUtils\n );\n }\n\n}( window, function factory( window, Flickity, utils ) {\n\n'use strict';\n\n// append cells to a document fragment\nfunction getCellsFragment( cells ) {\n var fragment = document.createDocumentFragment();\n cells.forEach( function( cell ) {\n fragment.appendChild( cell.element );\n } );\n return fragment;\n}\n\n// -------------------------- add/remove cell prototype -------------------------- //\n\nvar proto = Flickity.prototype;\n\n/**\n * Insert, prepend, or append cells\n * @param {[Element, Array, NodeList]} elems - Elements to insert\n * @param {Integer} index - Zero-based number to insert\n */\nproto.insert = function( elems, index ) {\n var cells = this._makeCells( elems );\n if ( !cells || !cells.length ) {\n return;\n }\n var len = this.cells.length;\n // default to append\n index = index === undefined ? len : index;\n // add cells with document fragment\n var fragment = getCellsFragment( cells );\n // append to slider\n var isAppend = index == len;\n if ( isAppend ) {\n this.slider.appendChild( fragment );\n } else {\n var insertCellElement = this.cells[ index ].element;\n this.slider.insertBefore( fragment, insertCellElement );\n }\n // add to this.cells\n if ( index === 0 ) {\n // prepend, add to start\n this.cells = cells.concat( this.cells );\n } else if ( isAppend ) {\n // append, add to end\n this.cells = this.cells.concat( cells );\n } else {\n // insert in this.cells\n var endCells = this.cells.splice( index, len - index );\n this.cells = this.cells.concat( cells ).concat( endCells );\n }\n\n this._sizeCells( cells );\n this.cellChange( index, true );\n};\n\nproto.append = function( elems ) {\n this.insert( elems, this.cells.length );\n};\n\nproto.prepend = function( elems ) {\n this.insert( elems, 0 );\n};\n\n/**\n * Remove cells\n * @param {[Element, Array, NodeList]} elems - ELements to remove\n */\nproto.remove = function( elems ) {\n var cells = this.getCells( elems );\n if ( !cells || !cells.length ) {\n return;\n }\n\n var minCellIndex = this.cells.length - 1;\n // remove cells from collection & DOM\n cells.forEach( function( cell ) {\n cell.remove();\n var index = this.cells.indexOf( cell );\n minCellIndex = Math.min( index, minCellIndex );\n utils.removeFrom( this.cells, cell );\n }, this );\n\n this.cellChange( minCellIndex, true );\n};\n\n/**\n * logic to be run after a cell's size changes\n * @param {Element} elem - cell's element\n */\nproto.cellSizeChange = function( elem ) {\n var cell = this.getCell( elem );\n if ( !cell ) {\n return;\n }\n cell.getSize();\n\n var index = this.cells.indexOf( cell );\n this.cellChange( index );\n};\n\n/**\n * logic any time a cell is changed: added, removed, or size changed\n * @param {Integer} changedCellIndex - index of the changed cell, optional\n * @param {Boolean} isPositioningSlider - Positions slider after selection\n */\nproto.cellChange = function( changedCellIndex, isPositioningSlider ) {\n var prevSelectedElem = this.selectedElement;\n this._positionCells( changedCellIndex );\n this._getWrapShiftCells();\n this.setGallerySize();\n // update selectedIndex\n // try to maintain position & select previous selected element\n var cell = this.getCell( prevSelectedElem );\n if ( cell ) {\n this.selectedIndex = this.getCellSlideIndex( cell );\n }\n this.selectedIndex = Math.min( this.slides.length - 1, this.selectedIndex );\n\n this.emitEvent( 'cellChange', [ changedCellIndex ] );\n // position slider\n this.select( this.selectedIndex );\n // do not position slider after lazy load\n if ( isPositioningSlider ) {\n this.positionSliderAtSelected();\n }\n};\n\n// ----- ----- //\n\nreturn Flickity;\n\n} ) );\n","// lazyload\n( function( window, factory ) {\n // universal module definition\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n './flickity',\n 'fizzy-ui-utils/utils',\n ], function( Flickity, utils ) {\n return factory( window, Flickity, utils );\n } );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n window,\n require('./flickity'),\n require('fizzy-ui-utils')\n );\n } else {\n // browser global\n factory(\n window,\n window.Flickity,\n window.fizzyUIUtils\n );\n }\n\n}( window, function factory( window, Flickity, utils ) {\n'use strict';\n\nFlickity.createMethods.push('_createLazyload');\nvar proto = Flickity.prototype;\n\nproto._createLazyload = function() {\n this.on( 'select', this.lazyLoad );\n};\n\nproto.lazyLoad = function() {\n var lazyLoad = this.options.lazyLoad;\n if ( !lazyLoad ) {\n return;\n }\n // get adjacent cells, use lazyLoad option for adjacent count\n var adjCount = typeof lazyLoad == 'number' ? lazyLoad : 0;\n var cellElems = this.getAdjacentCellElements( adjCount );\n // get lazy images in those cells\n var lazyImages = [];\n cellElems.forEach( function( cellElem ) {\n var lazyCellImages = getCellLazyImages( cellElem );\n lazyImages = lazyImages.concat( lazyCellImages );\n } );\n // load lazy images\n lazyImages.forEach( function( img ) {\n new LazyLoader( img, this );\n }, this );\n};\n\nfunction getCellLazyImages( cellElem ) {\n // check if cell element is lazy image\n if ( cellElem.nodeName == 'IMG' ) {\n var lazyloadAttr = cellElem.getAttribute('data-flickity-lazyload');\n var srcAttr = cellElem.getAttribute('data-flickity-lazyload-src');\n var srcsetAttr = cellElem.getAttribute('data-flickity-lazyload-srcset');\n if ( lazyloadAttr || srcAttr || srcsetAttr ) {\n return [ cellElem ];\n }\n }\n // select lazy images in cell\n var lazySelector = 'img[data-flickity-lazyload], ' +\n 'img[data-flickity-lazyload-src], img[data-flickity-lazyload-srcset]';\n var imgs = cellElem.querySelectorAll( lazySelector );\n return utils.makeArray( imgs );\n}\n\n// -------------------------- LazyLoader -------------------------- //\n\n/**\n * class to handle loading images\n * @param {Image} img - Image element\n * @param {Flickity} flickity - Flickity instance\n */\nfunction LazyLoader( img, flickity ) {\n this.img = img;\n this.flickity = flickity;\n this.load();\n}\n\nLazyLoader.prototype.handleEvent = utils.handleEvent;\n\nLazyLoader.prototype.load = function() {\n this.img.addEventListener( 'load', this );\n this.img.addEventListener( 'error', this );\n // get src & srcset\n var src = this.img.getAttribute('data-flickity-lazyload') ||\n this.img.getAttribute('data-flickity-lazyload-src');\n var srcset = this.img.getAttribute('data-flickity-lazyload-srcset');\n // set src & serset\n this.img.src = src;\n if ( srcset ) {\n this.img.setAttribute( 'srcset', srcset );\n }\n // remove attr\n this.img.removeAttribute('data-flickity-lazyload');\n this.img.removeAttribute('data-flickity-lazyload-src');\n this.img.removeAttribute('data-flickity-lazyload-srcset');\n};\n\nLazyLoader.prototype.onload = function( event ) {\n this.complete( event, 'flickity-lazyloaded' );\n};\n\nLazyLoader.prototype.onerror = function( event ) {\n this.complete( event, 'flickity-lazyerror' );\n};\n\nLazyLoader.prototype.complete = function( event, className ) {\n // unbind events\n this.img.removeEventListener( 'load', this );\n this.img.removeEventListener( 'error', this );\n\n var cell = this.flickity.getParentCell( this.img );\n var cellElem = cell && cell.element;\n this.flickity.cellSizeChange( cellElem );\n\n this.img.classList.add( className );\n this.flickity.dispatchEvent( 'lazyLoad', event, cellElem );\n};\n\n// ----- ----- //\n\nFlickity.LazyLoader = LazyLoader;\n\nreturn Flickity;\n\n} ) );\n","/*!\n * Flickity v2.3.0\n * Touch, responsive, flickable carousels\n *\n * Licensed GPLv3 for open source use\n * or Flickity Commercial License for commercial use\n *\n * https://flickity.metafizzy.co\n * Copyright 2015-2021 Metafizzy\n */\n\n( function( window, factory ) {\n // universal module definition\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( [\n './flickity',\n './drag',\n './prev-next-button',\n './page-dots',\n './player',\n './add-remove-cell',\n './lazyload',\n ], factory );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory(\n require('./flickity'),\n require('./drag'),\n require('./prev-next-button'),\n require('./page-dots'),\n require('./player'),\n require('./add-remove-cell'),\n require('./lazyload')\n );\n }\n\n} )( window, function factory( Flickity ) {\n return Flickity;\n} );\n","export class Accordion {\n\telement: HTMLDetailsElement;\n summary: HTMLElement;\n content: HTMLElement;\n animation: Animation | null;\n isClosing: boolean;\n isExpanding: boolean;\n\n\tconstructor(el: HTMLDetailsElement) {\n\t\tthis.element = el;\n\n\t\tlet summary = el.querySelector(\"summary\");\n\t\tlet content = el.querySelector(\":scope > :not(summary)\");\n\t\tif (summary == null) {\n\t\t\tthrow new Error(\"Specified details element contains no summary element.\");\n\t\t}\n\t\tif (content == null) {\n\t\t\tthrow new Error(\"Specified details element contains no content.\");\n\t\t}\n\n\t\tthis.summary = summary;\n\t\tthis.content = content;\n\t\tthis.animation = null;\n\t\tthis.isClosing = false;\n\t\tthis.isExpanding = false;\n\n\t\tthis.summary.addEventListener(\"click\", this.onClickBound);\n\t}\n\n\topen() {\n\t\tthis.element.style.height = `${this.element.offsetHeight}px`;\n\t\tthis.element.open = true;\n\t\twindow.requestAnimationFrame(() => this.expand());\n\t}\n\n\tclose() {\n\t\tthis.shrink();\n\t}\n\n\tprivate onClickBound = this.onClick.bind(this);\n\tprivate onClick(e: MouseEvent) {\n\t\te.preventDefault();\n\n\t\tthis.element.style.overflow = \"hidden\";\n\t\tif (this.isClosing || !this.element.open) {\n\t\t\tthis.open();\n\t\t} else if (this.isExpanding || this.element.open) {\n\t\t\tthis.close();\n\t\t}\n\t}\n\n\tprivate shrink() {\n\t\tthis.isClosing = true;\n\n\t\tconst startHeight = `${this.element.offsetHeight}px`;\n\t\t// Calculate the height of the summary\n\t\tconst endHeight = `${this.summary.offsetHeight}px`;\n\n\t\tif (this.animation) {\n\t\t\tthis.animation.cancel();\n\t\t}\n\n\t\tthis.animation = this.element.animate({\n\t\t\theight: [startHeight, endHeight]\n\t\t}, {\n\t\t\tduration: 400,\n\t\t\teasing: \"ease-out\"\n\t\t});\n\n\t\tthis.animation.onfinish = () => this.onAnimationFinish(false);\n\t\tthis.animation.oncancel = () => this.isClosing = false;\n\t}\n\n\tprivate expand() {\n\t\tthis.isExpanding = true;\n\t\tconst startHeight = `${this.element.offsetHeight}px`;\n\t\t// Calculate the open height of the element (summary height + content height)\n\t\tconst endHeight = `${this.summary.offsetHeight + this.content.offsetHeight}px`;\n\n\t\tif (this.animation != null) {\n\t\t\tthis.animation.cancel();\n\t\t}\n\n\t\tthis.animation = this.element.animate({\n\t\t\theight: [startHeight, endHeight]\n\t\t}, {\n\t\t\tduration: 400,\n\t\t\teasing: \"ease-out\"\n\t\t});\n\t\tthis.animation.onfinish = () => this.onAnimationFinish(true);\n\t\tthis.animation.oncancel = () => this.isExpanding = false;\n\t}\n\n\tprivate onAnimationFinish(isOpen: boolean) {\n\t\tthis.element.open = isOpen;\n\n\t\tthis.animation = null;\n\t\tthis.isClosing = false;\n\t\tthis.isExpanding = false;\n\n\t\tthis.element.style.height = \"\";\n\t\tthis.element.style.overflow = \"\";\n\t}\n}\n","import \"../Styles/index.scss\";\n\nimport { trackEvent, trackPageView } from \"./analytics\";\ntrackPageView();\n\nimport { initializeMaps } from \"@wagich/bluc-map\";\ninitializeMaps();\n\nimport { Fancybox, Panzoom, Carousel } from \"@fancyapps/ui\";\nCarousel.defaults.Navigation = {\n\tnextTpl: '',\n\tprevTpl: ''\n};\nFancybox.defaults = {\n\ttpl: {\n\t\tcloseButton: ``\n\t},\n\tThumbs: false,\n\tToolbar: {\n\t\tdisplay: {\n\t\t\tright: [\"fullscreen\", \"thumbs\", \"close\"]\n\t\t},\n\t\titems: {\n\t\t\tinfobar: {\n\t\t\t\ttpl: '
/
'\n\t\t\t},\n\t\t\tdownload: {\n\t\t\t\ttpl: ''\n\t\t\t},\n\t\t\tprev: {\n\t\t\t\ttpl: ''\n\t\t\t},\n\t\t\tnext: {\n\t\t\t\ttpl: ''\n\t\t\t},\n\t\t\tslideshow: {\n\t\t\t\ttpl: ''\n\t\t\t},\n\t\t\tfullscreen: {\n\t\t\t\ttpl: ''\n\t\t\t},\n\t\t\tthumbs: {\n\t\t\t\ttpl: ''\n\t\t\t},\n\t\t\tclose: {\n\t\t\t\ttpl: ''\n\t\t\t}\n\t\t},\n\t}\n};\nFancybox.bind(\"[data-fancybox], .is-zoomable\", {\n\thideScrollbar: false,\n});\n\nimport tippy from \"tippy.js\";\ntippy(\"[data-tippy-content]\");\n\nconst dropdowns = document.querySelectorAll(\".dropdown:not(.is-hoverable)\");\nif (dropdowns.length > 0) {\n\tfor (let element of dropdowns) {\n\t\telement.addEventListener(\"click\", (event) => {\n\t\t\tevent.stopPropagation();\n\t\t\telement.classList.toggle(\"is-active\");\n\t\t});\n\t}\n\tdocument.addEventListener(\"click\", (event) => {\n\t\tfor (let element of dropdowns) {\n\t\t\telement.classList.remove(\"is-active\");\n\t\t}\n\t});\n}\n\nimport Flickity from \"flickity\";\nfor (let element of document.querySelectorAll(\".asset-list--image\")) {\n\tnew Flickity(element, {\n\t\tpageDots: false,\n\t});\n}\n\nimport { Accordion } from \"./accordion\";\nfor (let element of document.querySelectorAll(\"details\")) {\n\tnew Accordion(element);\n}\n\ndocument.querySelector(\".header__nav-toggle\")?.addEventListener(\"click\", () => {\n\tdocument.documentElement.classList.toggle(\"is-nav-open\");\n});\n\nlet headers = document.querySelectorAll(\".header\");\nlet isHeaderCollapsed = false;\nfunction headerScrollHandler(e: Event) {\n\tif (!isHeaderCollapsed && window.scrollY > 60) {\n\t\tisHeaderCollapsed = true;\n\t\tfor (let element of headers) {\n\t\t\telement.classList.add(\"is-collapsed\");\n\t\t}\n\t}\n\tif (isHeaderCollapsed && window.scrollY <= 60) {\n\t\tisHeaderCollapsed = false;\n\t\tfor (let element of headers) {\n\t\t\telement.classList.remove(\"is-collapsed\");\n\t\t}\n\t}\n}\n\nfunction openDesktopSubmenu(e: MouseEvent) {\n\tlet target = e.target as HTMLElement;\n\tlet item = target.parentElement!;\n\tfor (let otherItem of document.querySelectorAll(\".nav-item.level-1\")) {\n\t\tif (otherItem === item) {\n\t\t\tcontinue;\n\t\t}\n\t\totherItem.classList.remove(\"is-open\");\n\t}\n\titem.classList.toggle(\"is-open\");\n}\nfunction closeDesktopSubmenu(e: MouseEvent) {\n\tlet target = e.target as HTMLElement;\n\tif (!target.closest(\".nav-item.level-1.is-open\")) {\n\t\tdocument.querySelector(\".nav-item.level-1.is-open\")?.classList.remove(\"is-open\");\n\t}\n}\n\nwindow.addEventListener(\"scroll\", headerScrollHandler);\n\n\nfor (let element of document.querySelectorAll(\".nav-link.level-1\")) {\n\telement.addEventListener(\"click\", openDesktopSubmenu);\n}\ndocument.addEventListener(\"click\", closeDesktopSubmenu);\n"],"file":"assets/main-farnWgJe.js"}