{"version":3,"file":"BeAcKuOE.js","sources":["../../../../../../packages/shared/composables/useLinks.ts","../../../../../../packages/shared/composables/useCursor.ts","../../../../../../packages/shared/components/base/SharedBaseMouseFollow/SharedBaseMouseFollow.vue","../../../../components/base/BaseChatbase/BaseChatbase.vue","../../../../components/base/BaseCursor/BaseCursor.vue","../../../../components/storyblok/basic/BMAlert/BMAlert.vue","../../../../components/storyblok/core/CorePageLayer/CorePageLayer.vue","../../../../pages/[...slug].vue"],"sourcesContent":["import { useRouter } from 'nuxt/app';\nimport type { MultilinkStoryblok } from '../types/storyblok';\n\nexport function useLinks() {\n function visitLink(link: MultilinkStoryblok) {\n if (link.linktype === 'url' || link.linktype === 'asset') {\n // Open in window\n window.open(link.url, '_blank');\n } else if (link.linktype === 'story') {\n // Push to router\n const router = useRouter();\n let url = link.story?.full_slug;\n if (!url?.startsWith('/')) {\n url = `/${url}`;\n }\n void router.push({ path: url });\n }\n }\n\n return {\n visitLink,\n };\n}\n","import { gsap } from 'gsap';\nimport { nextTick, onMounted, onUnmounted, reactive, watch, type ShallowRef } from 'vue';\nimport type { MultilinkStoryblok } from '@seb-platform/shared/types/storyblok';\nimport { useLinks } from './useLinks';\nimport { useMouseFollow } from './useMouseFollow';\n\ntype UtilButtonStoryblokLike = {\n text?: string;\n theme: 'primary' | 'secondary';\n icon?: string;\n link?: MultilinkStoryblok;\n};\n\n/**\n * Usage:\n * Simply add the data-cursor attribute to your mouse-sensitive element.\n *\n * Example:\n * ```\n *
\n * ```\n *\n * The string encoded data is typed as CursorData below.\n */\n\nexport interface CursorData {\n button?: UtilButtonStoryblokLike;\n labels?: string[];\n}\n\nexport function useCursor(container: ShallowRef) {\n const { updatePosition, shouldFollow } = useMouseFollow();\n const { visitLink } = useLinks();\n\n const moduleState = reactive<{\n currentTarget: HTMLElement | undefined;\n button: UtilButtonStoryblokLike | undefined;\n parsedData: CursorData | undefined;\n isDark: boolean;\n theme: 'primary' | 'secondary';\n }>({\n currentTarget: undefined,\n button: undefined,\n parsedData: undefined,\n isDark: false,\n theme: 'primary',\n });\n\n let fadeIconTimeout: number;\n\n function setCursor() {\n document.documentElement.style.cursor = '';\n if (moduleState.currentTarget) {\n moduleState.currentTarget.style.cursor = 'pointer';\n }\n }\n\n function resetCursor() {\n if (moduleState.currentTarget) {\n moduleState.currentTarget.style.cursor = 'auto';\n }\n }\n\n const tickerState = reactive<{\n mode: string;\n targetButton: UtilButtonStoryblokLike | undefined;\n progress: number;\n targetText: string;\n labelIndex: number;\n }>({\n mode: 'in',\n targetButton: undefined,\n progress: 0,\n targetText: '',\n labelIndex: 0,\n });\n\n watch(\n () => tickerState.progress,\n () => {\n const index = Math.round(tickerState.progress * tickerState.targetText.length);\n if (moduleState.button) {\n moduleState.button.text = tickerState.targetText.slice(0, index);\n }\n }\n );\n\n function checkButton() {\n if (tickerState.targetButton) {\n void animateButton(tickerState.targetButton);\n }\n }\n\n function clearButton(force: boolean = false) {\n if (tickerState.progress !== 0 && !force) {\n return;\n }\n resetCursor();\n moduleState.parsedData = undefined;\n moduleState.currentTarget = undefined;\n tickerState.targetButton = undefined;\n tickerState.labelIndex = 0;\n tickerState.targetText = '';\n moduleState.button = undefined;\n }\n\n function checkLabels() {\n const parsedLabels: string[] = moduleState.parsedData?.labels ?? [];\n if (!parsedLabels || parsedLabels.length === 1) {\n return;\n }\n void gsap\n .to(tickerState, {\n duration: 0.25,\n overwrite: true,\n progress: 0,\n delay: 5,\n })\n .then(() => {\n tickerState.labelIndex++;\n if (tickerState.labelIndex > parsedLabels.length - 1) {\n tickerState.labelIndex = 0;\n }\n tickerState.targetButton!.text = parsedLabels[tickerState.labelIndex];\n void animateButton(tickerState.targetButton ?? null);\n });\n }\n\n function updateButtonStyles() {\n if (!moduleState.button) {\n return;\n }\n if (moduleState.button.icon !== tickerState.targetButton?.icon) {\n moduleState.button.icon = tickerState.targetButton?.icon;\n }\n if (moduleState.button.theme !== tickerState.targetButton?.theme) {\n moduleState.button.theme = tickerState.targetButton!.theme;\n }\n }\n\n async function animateButton(button: UtilButtonStoryblokLike | null) {\n if (!container.value) {\n return;\n }\n if (button && !moduleState.button) {\n moduleState.button = button;\n await nextTick();\n }\n const buttonEl = container.value.querySelector('.base-cursor__button');\n if (button) {\n tickerState.targetButton = JSON.parse(JSON.stringify(button));\n if (!moduleState.button) {\n moduleState.button = button;\n moduleState.button.text = '';\n }\n if (tickerState.progress === 0) {\n tickerState.targetText = tickerState.targetButton?.text ?? '';\n updateButtonStyles();\n gsap.to(buttonEl as HTMLElement, {\n duration: 0.25,\n autoAlpha: 1,\n overwrite: true,\n delay: 0,\n });\n const buttonInner = container.value.querySelector('.base-cursor__button .util-button');\n gsap.to(buttonInner as HTMLElement, {\n paddingLeft: '',\n paddingRight: '',\n duration: 0.2,\n overwrite: true,\n });\n window.clearTimeout(fadeIconTimeout);\n fadeIconTimeout = window.setTimeout(fadeIcon, 10);\n const tickerDuration = tickerState.targetText.length * 0.03;\n void gsap\n .to(tickerState, {\n overwrite: true,\n duration: tickerDuration,\n progress: 1,\n delay: 0,\n })\n .then(() => checkLabels());\n } else {\n gsap.to(tickerState, {\n duration: 0.25,\n overwrite: true,\n progress: 0,\n onComplete: checkButton,\n });\n }\n } else {\n hideButton();\n }\n }\n\n function fadeIcon(opacity: number = 1) {\n if (!container.value) {\n return;\n }\n const buttonIcon = container.value.querySelector('.base-cursor__button .button-icon');\n if (buttonIcon) {\n gsap.to(buttonIcon as HTMLElement, {\n autoAlpha: opacity,\n duration: 0.2,\n overwrite: true,\n });\n }\n }\n\n let isHiding = false;\n\n function hideButton() {\n if (isHiding) {\n return;\n }\n isHiding = true;\n resetCursor();\n const buttonEl = container.value?.querySelector('.base-cursor__button');\n if (!buttonEl) {\n return;\n }\n const buttonInner = container.value?.querySelector(\n '.base-cursor__button .util-button'\n );\n if (!buttonInner) {\n return;\n }\n gsap.to(buttonInner as HTMLElement, {\n paddingLeft: 0,\n paddingRight: 0,\n duration: 0.25,\n delay: 0.2,\n overwrite: true,\n });\n fadeIcon(0);\n gsap.to(buttonEl as HTMLElement, {\n autoAlpha: 0,\n duration: 0.25,\n delay: 0.25,\n overwrite: true,\n onComplete: clearButton,\n });\n gsap.to(tickerState, {\n duration: 0.25,\n progress: 0,\n overwrite: true,\n });\n }\n\n function onMouseOver(e: MouseEvent) {\n const parent = (e.target! as HTMLElement).closest('[data-cursor]');\n let parsedData: CursorData | null = null;\n try {\n parsedData = JSON.parse(parent?.getAttribute('data-cursor') ?? '{}') as CursorData;\n parsedData.labels = parsedData.labels?.map(label => label.trim()).filter(label => label.length > 0);\n\n if (!parent || !parsedData.button) {\n moduleState.currentTarget = undefined;\n resetCursor();\n hideButton();\n return;\n }\n if (parent === moduleState.currentTarget && parent !== null) {\n return;\n }\n isHiding = false;\n moduleState.currentTarget = parent;\n if (parsedData.button) {\n parsedData.button.theme = parsedData.button.theme ? parsedData.button.theme : 'primary';\n } else {\n return;\n }\n moduleState.parsedData = parsedData;\n void animateButton(parsedData.button ? parsedData.button : null);\n setCursor();\n } catch (error) {\n console.error('Invalid JSON', error);\n }\n }\n\n function onMouseMove(e: MouseEvent) {\n updatePosition({ x: e.clientX, y: e.clientY });\n }\n\n function onClick(e: any) {\n resetCursor();\n const hasButtonParent = (e?.target as HTMLElement).closest('button');\n if (hasButtonParent) {\n return;\n }\n if (tickerState.progress === 1 && tickerState.targetButton?.link) {\n visitLink(tickerState.targetButton?.link);\n }\n }\n\n function removeListeners() {\n document.documentElement.removeEventListener('click', onClick);\n document.documentElement.removeEventListener('mousemove', onMouseMove);\n document.documentElement.removeEventListener('mouseover', onMouseOver);\n }\n\n function addListeners() {\n removeListeners();\n document.documentElement.addEventListener('click', onClick);\n document.documentElement.addEventListener('mousemove', onMouseMove);\n document.documentElement.addEventListener('mouseover', onMouseOver);\n }\n\n watch(\n () => shouldFollow.value,\n () => {\n if (shouldFollow.value) {\n removeListeners();\n addListeners();\n } else {\n removeListeners();\n }\n if (!shouldFollow.value) {\n clearButton(true);\n }\n }\n );\n\n onUnmounted(() => {\n removeListeners();\n });\n\n // TODO can be remove as the watcher already takes care of it?\n onMounted(() => {\n if (shouldFollow.value) {\n addListeners();\n }\n });\n\n return { state: moduleState };\n}\n","\n\n\n\n\n"],"names":["useLinks","visitLink","link","router","useRouter","url","_a","useCursor","container","updatePosition","shouldFollow","useMouseFollow","moduleState","reactive","fadeIconTimeout","setCursor","resetCursor","tickerState","watch","index","checkButton","animateButton","clearButton","force","checkLabels","parsedLabels","gsap","updateButtonStyles","_b","_c","button","nextTick","buttonEl","buttonInner","fadeIcon","tickerDuration","hideButton","opacity","buttonIcon","isHiding","onMouseOver","e","parent","parsedData","label","error","onMouseMove","onClick","removeListeners","addListeners","onUnmounted","onMounted","$el","useTemplateRef","state","props","__props","tickerPosition","onTicker","speed","xOffset","yOffset","show","value","onBeforeUnmount","localeMarket","useLocale","headerState","useHeader","floatingElementsState","useFloatingElements","chatbotId","computed","MARKET_TO_CHATBOT_ID_MAP","intervalId","ref","checksCount","timeout","checkVisibility","initial","messageBubblesEl","bubbleButtonEl","bubbleWindowEl","el","onScriptLoaded","script","useScriptTag","reloadChatbaseScript","id","scrollState","useScroll","easeOut","useGsap","isActive","windowWidth","$alert","isMedia","isMediaVideo","isVideo","_e","_d","isMediaWebm","isVideoWebm","hideTimeout","updateWindowWidth","getCursorButton","toggleAlert","shouldShow","setAlertClosing","hideAfterSeconds","setAlertBehaviour","updateAlertMargin","MAX_WIDTH","marginRight","watchEffect","useLayer","setScroll","$modalContent","isOpen","isFirstBlokDark","close","scrollStateDebounce","onManualScroll","locale","t","useI18n","footerState","useFooter","route","useRoute","getSettings","getStory","__temp","__restore","_withAsyncContext","useStoryblokClient","settings","storyRes","useStoryblokBridge","newStory","defaultStoryParams","trackPageViews","useGtmTracking","alert","header","setIsDarkByComponent","useTheme","firstBlok","updateHeaderState","storyHasStandaloneModules","blok","moduleSettingsMap","setFooterState","hasHiddenFooter","useSeoMetaTags","LOCALE_TO_HREFLANG_MAP"],"mappings":"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"}