{"version":3,"file":"app.js","mappings":"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","sources":["webpack://silverstripe-base/./node_modules/js-cookie/dist/js.cookie.mjs","webpack://silverstripe-base/./themes/app/src/scripts/components/scroll-reveal.js","webpack://silverstripe-base/./themes/app/src/scripts/components/site-announcement-bar.js","webpack://silverstripe-base/./themes/app/src/scripts/components/site-header.js","webpack://silverstripe-base/./themes/app/src/scripts/components/site-widget.js","webpack://silverstripe-base/./themes/app/src/scripts/components/subscribe-form.js","webpack://silverstripe-base/./themes/app/src/scripts/components/mobile-bar.js","webpack://silverstripe-base/./themes/app/src/index.js","webpack://silverstripe-base/./themes/app/src/scripts/components/page-overlay.js","webpack://silverstripe-base/./themes/app/src/scripts/common/ajax.js","webpack://silverstripe-base/./themes/app/src/scripts/common/util.js","webpack://silverstripe-base/./node_modules/@motionone/dom/dist/animate/index.es.js","webpack://silverstripe-base/./node_modules/@motionone/dom/dist/animate/create-animate.es.js","webpack://silverstripe-base/./node_modules/motion/dist/animate.es.js"],"sourcesContent":["/*! js-cookie v3.0.5 | MIT */\n/* eslint-disable no-var */\nfunction assign (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n target[key] = source[key];\n }\n }\n return target\n}\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\nvar defaultConverter = {\n read: function (value) {\n if (value[0] === '\"') {\n value = value.slice(1, -1);\n }\n return value.replace(/(%[\\dA-F]{2})+/gi, decodeURIComponent)\n },\n write: function (value) {\n return encodeURIComponent(value).replace(\n /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,\n decodeURIComponent\n )\n }\n};\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\n\nfunction init (converter, defaultAttributes) {\n function set (name, value, attributes) {\n if (typeof document === 'undefined') {\n return\n }\n\n attributes = assign({}, defaultAttributes, attributes);\n\n if (typeof attributes.expires === 'number') {\n attributes.expires = new Date(Date.now() + attributes.expires * 864e5);\n }\n if (attributes.expires) {\n attributes.expires = attributes.expires.toUTCString();\n }\n\n name = encodeURIComponent(name)\n .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent)\n .replace(/[()]/g, escape);\n\n var stringifiedAttributes = '';\n for (var attributeName in attributes) {\n if (!attributes[attributeName]) {\n continue\n }\n\n stringifiedAttributes += '; ' + attributeName;\n\n if (attributes[attributeName] === true) {\n continue\n }\n\n // Considers RFC 6265 section 5.2:\n // ...\n // 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n // character:\n // Consume the characters of the unparsed-attributes up to,\n // not including, the first %x3B (\";\") character.\n // ...\n stringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n }\n\n return (document.cookie =\n name + '=' + converter.write(value, name) + stringifiedAttributes)\n }\n\n function get (name) {\n if (typeof document === 'undefined' || (arguments.length && !name)) {\n return\n }\n\n // To prevent the for loop in the first place assign an empty array\n // in case there are no cookies at all.\n var cookies = document.cookie ? document.cookie.split('; ') : [];\n var jar = {};\n for (var i = 0; i < cookies.length; i++) {\n var parts = cookies[i].split('=');\n var value = parts.slice(1).join('=');\n\n try {\n var found = decodeURIComponent(parts[0]);\n jar[found] = converter.read(value, found);\n\n if (name === found) {\n break\n }\n } catch (e) {}\n }\n\n return name ? jar[name] : jar\n }\n\n return Object.create(\n {\n set,\n get,\n remove: function (name, attributes) {\n set(\n name,\n '',\n assign({}, attributes, {\n expires: -1\n })\n );\n },\n withAttributes: function (attributes) {\n return init(this.converter, assign({}, this.attributes, attributes))\n },\n withConverter: function (converter) {\n return init(assign({}, this.converter, converter), this.attributes)\n }\n },\n {\n attributes: { value: Object.freeze(defaultAttributes) },\n converter: { value: Object.freeze(converter) }\n }\n )\n}\n\nvar api = init(defaultConverter, { path: '/' });\n/* eslint-enable no-var */\n\nexport { api as default };\n","import { animate, inView, stagger, timeline } from \"motion\";\n\nconst animateSlideReveal = (el) => {\n animate(el, { x: [0, \"100%\"] }, { duration: 1.2, delay: 0.2, easing: \"ease\" });\n};\n\nconst variants = {\n \"fade-up\": {\n opacity: 1,\n transform: \"translate3d(0, 0, 0)\",\n },\n \"fade-up-left\": {\n opacity: 1,\n transform: \"translate3d(0, 0, 0)\",\n },\n \"fade-down\": {\n opacity: 1,\n transform: \"translate3d(0, 0, 0)\",\n },\n \"fade-left\": {\n opacity: 1,\n transform: \"translate3d(0, 0, 0)\",\n },\n \"fade-left-slow\": {\n opacity: 1,\n transform: \"translate3d(0, 0, 0)\",\n },\n \"fade-right\": {\n opacity: 1,\n transform: \"translate3d(0, 0, 0)\",\n },\n \"fade-in\": {\n opacity: 1,\n },\n \"scale-in\": {\n opacity: 1,\n transform: \"scale(1)\",\n },\n};\n\nconst reveal = (group) => {\n if (group.dataset.srGroup === \"sequence\") {\n const sequence = [];\n\n group.querySelectorAll(`[data-sr]`).forEach((el) => {\n const variant = variants[el.dataset.sr];\n\n if (variant && el.style.display !== \"none\") {\n sequence.push([el, variant, { ease: \"ease\", duration: 0.8, at: \"-0.4\" }]);\n }\n });\n\n inView(\n group,\n () => {\n timeline(sequence).finished.then((animations) => {\n animations?.forEach((animation) => {\n animation.effect?.target?.setAttribute(\"data-sr-done\", true);\n });\n });\n },\n {\n margin: \"0px 0px -25% 0px\",\n },\n );\n } else {\n for (const [key, opts] of Object.entries(variants)) {\n const els = Array.from(group.querySelectorAll(`[data-sr=\"${key}\"]:not([data-sr-done])`));\n\n let duration = 0.8;\n\n if (key === \"fade-in\" || key === \"fade-left-slow\") {\n duration = 1.5;\n }\n\n if (els.length) {\n els.forEach((el, index) => {\n const checklists = el.querySelectorAll(\"[class*=as-check-list]\");\n\n if (checklists.length) {\n let children = [];\n\n Array.from(el.children).forEach((child) => {\n if (\n [\"as-check-list-blue\", \"as-check-list-green\", \"as-check-list-orange\", \"as-check-list-white\"].some(\n (className) => child.classList.contains(className),\n )\n ) {\n const lis = Array.from(child.querySelectorAll(\"li\"));\n\n children = [...children, ...lis];\n } else {\n children.push(child);\n }\n });\n\n children.map((child) => child.setAttribute(\"data-sr\", \"fade-up\"));\n\n el.removeAttribute(\"data-sr\");\n els.splice(index, 1, ...children);\n }\n });\n\n const doAnimation = () => {\n animate(els, opts, {\n duration,\n delay: stagger(0.2),\n }).finished.then((animations) => {\n animations?.forEach((animation) => {\n animation.effect?.target?.setAttribute(\"data-sr-done\", true);\n });\n\n group.setAttribute(\"data-sr-done\", true);\n });\n };\n\n if (group.dataset.srGroup === \"onload\") {\n doAnimation();\n } else {\n inView(group, doAnimation, {\n margin: \"0px 0px -25% 0px\",\n });\n }\n }\n }\n }\n};\n\nconst handleMutations = (group, mutationList) => {\n for (const mutation of mutationList) {\n if (mutation.type === \"childList\") {\n reveal(group);\n }\n }\n};\n\nexport default {\n init: () => {\n document.querySelectorAll(\".site-header-line\").forEach((el) => {\n const observer = new IntersectionObserver(\n ([e]) => {\n if (e.isIntersecting) {\n setTimeout(() => {\n animate(el.querySelector(\"path\"), { strokeDashoffset: 0 }, { duration: 3, easing: \"linear\" });\n }, 250);\n\n observer.disconnect();\n }\n },\n {\n threshold: 0.1,\n },\n );\n\n observer.observe(el);\n });\n\n document.querySelectorAll(\"[data-slide-reveal]\").forEach((el) => {\n const observer = new IntersectionObserver(([e]) => {\n if (e.isIntersecting) {\n animateSlideReveal(el);\n\n observer.disconnect();\n }\n });\n\n observer.observe(el);\n });\n\n document.querySelectorAll(\"[data-sr-group]\").forEach((group) => {\n if (group.closest(\"[data-disable-animations]\")) {\n group.removeAttribute(\"data-sr-group\");\n return;\n }\n\n if (group.dataset.srGroup === \"mobile\") {\n if (window.matchMedia(\"(max-width: 767px)\").matches) {\n reveal(group);\n }\n\n return;\n }\n\n if (group.dataset.srGroup !== \"trigger\") {\n reveal(group);\n }\n\n if (group.dataset.srGroup === \"observe\") {\n const observer = new MutationObserver(handleMutations.bind(null, group));\n\n observer.observe(group, {\n childList: true,\n subtree: true,\n });\n }\n });\n },\n reveal,\n};\n","import { on } from \"delegated-events\";\n\nconst topBar = document.querySelector(\".site-announcement-bar\");\n\nconst handleClose = () => {\n topBar.remove();\n setHeight();\n};\n\nconst setHeight = () => {\n document.documentElement.style.setProperty(\"--site-announcement-height\", `${topBar.offsetHeight}px`);\n};\n\nexport default {\n init: () => {\n if (topBar) {\n on(\"click\", \".site-announcement-bar-close\", handleClose);\n\n setHeight();\n window.addEventListener(\"resize\", setHeight);\n }\n },\n};\n","import { on } from \"delegated-events\";\nimport { stagger, timeline } from \"motion\";\n\nconst siteHeader = document.querySelector(\".site-header\");\nconst siteMenuTrigger = document.querySelector(\".site-menu-trigger\");\nconst siteMenu = document.querySelector(\".site-menu\");\n\nconst generateSiteMenuLinePath = () => {\n const svg = document.querySelector(\".site-menu-line svg\");\n const holder = document.querySelector(\".site-menu-line\");\n const svgRect = holder.getBoundingClientRect();\n\n svg.setAttribute(\"viewBox\", `-1 -1 ${svgRect.width} ${svgRect.height}`);\n\n const pathParts = [`M${svgRect.width} 0`];\n\n let a = 70;\n let b = 80;\n\n if (window.matchMedia(\"(min-width: 1280px)\").matches) {\n a = 80;\n b = 100;\n }\n\n pathParts.push(`H${b}`);\n pathParts.push(`C${a} 0 0 0 0 ${b}`);\n pathParts.push(`V${svgRect.height}`);\n\n const pathData = pathParts.join(\"\");\n\n svg.innerHTML = ``;\n};\n\nconst openMenu = async () => {\n siteMenuTrigger.setAttribute(\"aria-label\", \"Close main menu\");\n siteMenuTrigger.setAttribute(\"aria-expanded\", \"true\");\n siteMenu.setAttribute(\"aria-hidden\", \"false\");\n document.documentElement.classList.add(\"js-menu-active\");\n\n if (window.matchMedia(\"(prefers-reduced-motion: no-preference)\").matches) {\n timeline([\n [\n \".site-menu-wrapper\",\n {\n x: [\"-100%\", 0],\n duration: 0.75,\n ease: \"expoScale(0.5, 7, none)\",\n },\n ],\n [\n \".site-menu-line path\",\n {\n strokeDashoffset: 0,\n duration: 12,\n easing: \"linear\",\n },\n ],\n [\n \".site-menu .site-menu-item\",\n { y: [\"60%\", 0], opacity: [0, 1], duration: 0.2 },\n { delay: stagger(0.1), at: \"<\" },\n ],\n ]);\n }\n};\n\nconst closeMenu = async () => {\n siteMenuTrigger.setAttribute(\"aria-label\", \"Open main menu\");\n siteMenuTrigger.setAttribute(\"aria-expanded\", \"false\");\n siteMenuTrigger.classList.add(\"pointer-events-none\");\n siteMenu.setAttribute(\"aria-hidden\", \"true\");\n\n if (window.matchMedia(\"(prefers-reduced-motion: no-preference)\").matches) {\n await timeline([\n [\".site-menu .site-menu-item\", { y: [0, \"60%\"], opacity: [1, 0], duration: 0.2 }],\n [\n \".site-menu-line path\",\n {\n strokeDashoffset: 4000,\n duration: 2,\n easing: \"linear\",\n },\n ],\n [\n \".site-menu-wrapper\",\n {\n x: [0, \"-100%\"],\n duration: 0.3,\n ease: \"expoScale(0.5, 7, none)\",\n },\n {\n at: \"<\",\n },\n ],\n ]).finished;\n }\n\n document.documentElement.classList.remove(\"js-menu-active\");\n siteMenuTrigger.classList.remove(\"pointer-events-none\");\n};\n\nexport default {\n init: () => {\n const scrollPixel = document.querySelector(\".scroll-pixel\");\n\n if (scrollPixel) {\n const observer = new IntersectionObserver(\n ([e]) => siteHeader.classList.toggle(\"is-stuck\", e.intersectionRatio < 1),\n {\n threshold: [1],\n },\n );\n\n observer.observe(document.querySelector(\".scroll-pixel\"));\n }\n\n on(\"click\", \".site-menu-trigger\", (e) => {\n const trigger = e.currentTarget;\n\n if (trigger.getAttribute(\"aria-expanded\") === \"true\") {\n closeMenu();\n } else {\n openMenu();\n }\n });\n\n on(\"click\", \".site-menu\", (e) => {\n if (!e.target.closest(\".site-menu-wrapper\")) {\n closeMenu();\n }\n });\n\n window.addEventListener(\"resize\", () => {\n generateSiteMenuLinePath();\n });\n\n generateSiteMenuLinePath();\n },\n};\n","import Cookies from \"js-cookie\";\nimport { on } from \"delegated-events\";\n\nconst widget = document.querySelector(\".site-widget\");\n\nconst setCookie = (state) => {\n Cookies.set(\"widgetstate\", state, {\n expires: 1,\n });\n};\n\nconst handleToggle = () => {\n const offset = widget.querySelector(\".site-widget-top\").offsetHeight;\n\n if (widget.getAttribute(\"aria-expanded\") === \"false\") {\n widget.style.transform = \"translate3d(0, 0, 0)\";\n widget.setAttribute(\"aria-expanded\", \"true\");\n setCookie(\"active\");\n } else {\n widget.style.transform = `translate3d(0, calc(100% - ${offset}px), 0)`;\n widget.setAttribute(\"aria-expanded\", \"false\");\n setCookie(\"inactive\");\n }\n};\n\nconst handleClose = (e) => {\n e.stopPropagation();\n\n widget.remove();\n};\n\nexport default {\n init: () => {\n if (widget) {\n on(\"click\", \".site-widget-top\", handleToggle);\n on(\"click\", \".site-widget-close\", handleClose);\n\n const offset = widget.querySelector(\".site-widget-top\").offsetHeight;\n\n if (Cookies.get(\"widgetstate\") === \"inactive\") {\n setTimeout(() => {\n widget.style.transform = `translate3d(0, calc(100% - ${offset}px), 0)`;\n widget.setAttribute(\"aria-expanded\", \"false\");\n }, 25);\n setCookie(\"inactive\");\n } else {\n widget.classList.add(\"no-animate\");\n widget.style.transform = \"translate3d(0, 0, 0)\";\n widget.setAttribute(\"aria-expanded\", \"true\");\n setCookie(\"active\");\n\n setTimeout(() => {\n widget.classList.remove(\"no-animate\");\n }, 750);\n }\n\n if (widget.classList.contains(\"has-auto-hide\")) {\n setTimeout(() => {\n if (widget.getAttribute(\"aria-expanded\") === \"true\") {\n widget.style.transform = `translate3d(0, calc(100% - ${offset}px), 0)`;\n widget.setAttribute(\"aria-expanded\", \"false\");\n setCookie(\"inactive\");\n }\n }, 5000);\n }\n }\n },\n};\n","import { on, fire } from \"delegated-events\";\nimport ajax from \"@common/ajax\";\nimport { trackGoogleAnalytics } from \"@common/util\";\nimport \"@styles/components/subscribe-form.css\";\n\nconst showFormMessages = (holder, message, success, autoHide) => {\n holder.style.display = \"block\";\n holder.innerHTML = message;\n\n if (success) {\n holder.classList.remove(\"form-message-error\");\n } else {\n holder.classList.add(\"form-message-error\");\n }\n\n if (autoHide) {\n setTimeout(() => {\n holder.style.display = \"none\";\n }, 5000);\n }\n};\n\nconst toggleSubmit = (submitButton) => {\n submitButton.disabled = !submitButton.disabled;\n submitButton.classList.toggle(\"btn-loading\");\n};\n\nexport default {\n init: () => {\n on(\"submit\", \".subscribe-form\", (e) => {\n e.preventDefault();\n\n const form = e.target;\n const email = e.target.querySelector('[type=\"email\"]');\n const formMessages = form.querySelector(\".form-messages\");\n const submitButton = form.querySelector(\"[type=submit]\");\n\n toggleSubmit(submitButton);\n\n if (email.validity.valueMissing || email.validity.typeMismatch) {\n showFormMessages(formMessages, \"Please enter a valid email\", false, true);\n\n submitButton.disabled = false;\n\n return;\n }\n\n const formData = new FormData(form);\n\n ajax\n .url(form.action)\n .body(formData)\n .post()\n .json((res) => {\n if (res.success) {\n if (res.ga) {\n res.ga.forEach((event) => trackGoogleAnalytics(event));\n }\n\n form.reset();\n\n // Allow other scripts to hook into this submit\n fire(document.documentElement, \"ajaxform:submit\", {\n form: form,\n type: \"post\",\n url: new URL(form.action),\n queryParameters: new URLSearchParams(formData).toString(),\n });\n }\n\n if (res.message) {\n showFormMessages(formMessages, res.message, res.success, false);\n }\n })\n .catch((e) => {\n console.log(e);\n showFormMessages(formMessages, \"Sorry, there was a problem with your submission\", false, true);\n })\n .finally(() => {\n toggleSubmit(submitButton);\n });\n });\n },\n};\n","export default {\n init: () => {\n const mobileBar = document.querySelector('.mobile-bar')\n\n if (mobileBar) {\n const observer = new IntersectionObserver(([e]) => mobileBar.classList.toggle('is-hidden', !e.isIntersecting))\n\n observer.observe(document.querySelector('.scroll-pixel'))\n }\n },\n}\n","// Thirdparty\nimport \"swiper/css\";\nimport \"swiper/css/a11y\";\nimport \"swiper/css/autoplay\";\nimport \"swiper/css/effect-fade\";\nimport \"swiper/css/scrollbar\";\n\n// Theme\nimport \"@styles/index.css\";\n\nimport mobileBar from \"@scripts/components/mobile-bar\";\nimport pageOverlay from \"@scripts/components/page-overlay\";\nimport scrollReveal from \"@scripts/components/scroll-reveal\";\nimport siteAnnouncementBar from \"@scripts/components/site-announcement-bar\";\nimport siteHeader from \"@scripts/components/site-header\";\nimport siteWidget from \"@scripts/components/site-widget\";\nimport subscribeForm from \"@scripts/components/subscribe-form\";\n\nmobileBar.init();\npageOverlay.init();\nif (!window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches) {\n scrollReveal.init();\n}\nsiteAnnouncementBar.init();\nsiteHeader.init();\nsiteWidget.init();\nsubscribeForm.init();\n\ndocument.addEventListener(\"DOMContentLoaded\", () => {\n setTimeout(() => {\n document.documentElement.classList.remove(\"_preload\");\n }, 250);\n});\n\n// Dynamically load any components based on page conditions\n\nconst pageHas = (selector) => {\n return document.querySelectorAll(selector).length;\n};\n\nconst loadComponents = async () => {\n if (pageHas(\"[data-slide-toggle]\")) {\n const { default: component } = await import(\n /* webpackChunkName: \"components-slide-toggle\" */ \"@scripts/components/slide-toggle\"\n );\n\n component.init();\n }\n\n if (pageHas(\"[data-scroll]\")) {\n const { default: component } = await import(\n /* webpackChunkName: \"components-scroll-to\" */ \"@scripts/components/scroll-to\"\n );\n\n component.init();\n }\n\n if (pageHas(\"[data-tablist]\")) {\n const { default: component } = await import(\n /* webpackChunkName: \"components-tablist\" */ \"@scripts/components/tablist\"\n );\n\n component.init();\n }\n\n if (pageHas(\"[data-paginated-list]\")) {\n const { default: component } = await import(\n /* webpackChunkName: \"components-paginated-list\" */ \"@scripts/components/paginated-list\"\n );\n\n component.init();\n }\n\n if (pageHas(\"[data-modal]\")) {\n const { default: component } = await import(/* webpackChunkName: \"components-modal\" */ \"@scripts/components/modal\");\n\n component.init();\n }\n\n if (pageHas(\".media-slider\")) {\n const { default: component } = await import(\n /* webpackChunkName: \"components-page-header\" */ \"@scripts/components/media-slider\"\n );\n\n component.init();\n }\n\n if (pageHas(\"[data-tooltip]\")) {\n const { default: component } = await import(\n /* webpackChunkName: \"components-tooltip\" */ \"@scripts/components/tooltip\"\n );\n\n component.init();\n }\n\n if (pageHas(\"[data-popover]\")) {\n const { default: component } = await import(\n /* webpackChunkName: \"components-popover\" */ \"@scripts/components/popover\"\n );\n\n component.init();\n }\n};\n\nloadComponents();\n","import Cookies from \"js-cookie\";\n\nexport default {\n init: async () => {\n const overlayUrl = document.body.dataset.pageOverlayUrl;\n const overlayCookie = document.body.dataset.pageOverlayCookie;\n\n if (overlayUrl) {\n const { default: component } = await import(\n /* webpackChunkName: \"components-modal\" */ \"@scripts/components/modal\"\n );\n\n component.openModal({\n type: \"content\",\n url: overlayUrl,\n });\n\n if (parseInt(overlayCookie) === 1) {\n Cookies.set(\"seenpageoverlay\", true, { expires: 1 });\n }\n }\n },\n};\n","import wretch from 'wretch'\nimport QueryStringAddon from 'wretch/addons/queryString'\n\nwretch.options({\n headers: { 'X-Requested-With': 'XMLHttpRequest' },\n})\n\nexport default wretch().addon(QueryStringAddon)\n","export const isTouchDevice = \"ontouchstart\" in document.documentElement;\n\nexport const generateQueryString = (data = {}) => {\n let params = data;\n\n if (data instanceof FormData === true) {\n params = {};\n\n data.forEach((value, key) => (params[key] = value));\n }\n\n for (const key in params) {\n if (params[key] === \"\") {\n delete params[key];\n }\n }\n\n return new URLSearchParams(params);\n};\n\nexport const trackGoogleAnalytics = (event) => {\n if (window.dataLayer) {\n window.dataLayer.push(event);\n }\n};\n","import { Animation } from '@motionone/animation';\nimport { createAnimate } from './create-animate.es.js';\n\nconst animate = createAnimate(Animation);\n\nexport { animate };\n","import { invariant } from 'hey-listen';\nimport { animateStyle } from './animate-style.es.js';\nimport { getOptions } from './utils/options.es.js';\nimport { resolveElements } from '../utils/resolve-elements.es.js';\nimport { withControls } from './utils/controls.es.js';\nimport { resolveOption } from '../utils/stagger.es.js';\n\nfunction createAnimate(AnimatePolyfill) {\n return function animate(elements, keyframes, options = {}) {\n elements = resolveElements(elements);\n const numElements = elements.length;\n invariant(Boolean(numElements), \"No valid element provided.\");\n invariant(Boolean(keyframes), \"No keyframes defined.\");\n /**\n * Create and start new animations\n */\n const animationFactories = [];\n for (let i = 0; i < numElements; i++) {\n const element = elements[i];\n for (const key in keyframes) {\n const valueOptions = getOptions(options, key);\n valueOptions.delay = resolveOption(valueOptions.delay, i, numElements);\n const animation = animateStyle(element, key, keyframes[key], valueOptions, AnimatePolyfill);\n animationFactories.push(animation);\n }\n }\n return withControls(animationFactories, options, \n /**\n * TODO:\n * If easing is set to spring or glide, duration will be dynamically\n * generated. Ideally we would dynamically generate this from\n * animation.effect.getComputedTiming().duration but this isn't\n * supported in iOS13 or our number polyfill. Perhaps it's possible\n * to Proxy animations returned from animateStyle that has duration\n * as a getter.\n */\n options.duration);\n };\n}\n\nexport { createAnimate };\n","import { animate as animate$1, withControls } from '@motionone/dom';\nimport { isFunction } from '@motionone/utils';\nimport { Animation } from '@motionone/animation';\n\nfunction animateProgress(target, options = {}) {\n return withControls([\n () => {\n const animation = new Animation(target, [0, 1], options);\n animation.finished.catch(() => { });\n return animation;\n },\n ], options, options.duration);\n}\nfunction animate(target, keyframesOrOptions, options) {\n const factory = isFunction(target) ? animateProgress : animate$1;\n return factory(target, keyframesOrOptions, options);\n}\n\nexport { animate, animateProgress };\n"],"names":["target","i","arguments","length","source","key","api","init","converter","defaultAttributes","set","name","value","attributes","document","expires","Date","now","toUTCString","encodeURIComponent","replace","decodeURIComponent","escape","stringifiedAttributes","attributeName","split","cookie","write","Object","create","get","cookies","jar","parts","slice","join","found","read","e","remove","withAttributes","this","withConverter","freeze","path","variants","opacity","transform","reveal","group","dataset","srGroup","sequence","querySelectorAll","forEach","el","variant","sr","style","display","push","ease","duration","at","inView","timeline","finished","then","animations","animation","effect","setAttribute","margin","opts","entries","els","Array","from","index","children","child","some","className","classList","contains","lis","map","removeAttribute","splice","doAnimation","animate","delay","stagger","handleMutations","mutationList","mutation","type","topBar","querySelector","handleClose","setHeight","documentElement","setProperty","offsetHeight","siteHeader","siteMenuTrigger","siteMenu","generateSiteMenuLinePath","svg","svgRect","getBoundingClientRect","width","height","pathParts","a","b","window","matchMedia","matches","pathData","innerHTML","closeMenu","async","add","y","strokeDashoffset","easing","x","widget","setCookie","state","Cookies","handleToggle","offset","getAttribute","stopPropagation","showFormMessages","holder","message","success","autoHide","setTimeout","toggleSubmit","submitButton","disabled","toggle","mobileBar","IntersectionObserver","isIntersecting","observe","overlayUrl","body","pageOverlayUrl","overlayCookie","pageOverlayCookie","default","component","openModal","url","parseInt","pageOverlay","observer","disconnect","threshold","animateSlideReveal","closest","MutationObserver","bind","childList","subtree","on","addEventListener","intersectionRatio","currentTarget","openMenu","siteWidget","preventDefault","form","email","formMessages","validity","valueMissing","typeMismatch","formData","FormData","ajax","action","post","json","res","ga","event","trackGoogleAnalytics","reset","fire","URL","queryParameters","URLSearchParams","toString","catch","console","log","finally","pageHas","selector","loadComponents","wretch","options","headers","addon","QueryStringAddon","generateQueryString","data","params","dataLayer","AnimatePolyfill","elements","keyframes","numElements","Boolean","animationFactories","element","valueOptions","animateProgress","keyframesOrOptions"],"sourceRoot":""}