@kosdev-code/kos-ddk-components 0.1.0-dev.26 → 0.1.0-dev.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../packages/kos-ddk-components/src/core/configuration/component-configuration-context.tsx","../../../packages/kos-ddk-components/src/core/experience/experience.tsx","../../../packages/kos-ddk-components/src/core/experience/view-experience.ts","../../../packages/kos-ddk-components/src/styles/action-item/action-item.tsx","../../../packages/kos-ddk-components/src/styles/action-item-button/action-item-button.tsx","../../../packages/kos-ddk-components/src/styles/button/button.tsx","../../../packages/kos-ddk-components/src/styles/card/card.tsx","../../../packages/kos-ddk-components/src/styles/card-button/card-button.tsx","../../../packages/kos-ddk-components/src/styles/container/container.tsx","../../../packages/kos-ddk-components/src/styles/icon-button/icon-button.tsx","../../../packages/kos-ddk-components/src/styles/icon/green-tick-icon-style/green-tick-icon-style.tsx","../../../packages/kos-ddk-components/src/styles/icon/information-icon-style/information-icon-style.tsx","../../../packages/kos-ddk-components/src/styles/icon/question-icon-style/question-icon-style.tsx","../../../packages/kos-ddk-components/src/styles/icon/usb-icon-style/usb-icon-style.tsx","../../../packages/kos-ddk-components/src/styles/info-card-header/info-card-header.tsx","../../../packages/kos-ddk-components/src/styles/info-container/info-container.tsx","../../../packages/kos-ddk-components/src/styles/typography/typography.tsx","../../../packages/kos-ddk-components/src/styles/input/input.tsx","../../../packages/kos-ddk-components/src/styles/instruction-card/instruction-card.tsx","../../../packages/kos-ddk-components/src/styles/list-container/list-container.tsx","../../../packages/kos-ddk-components/src/styles/nav-button/navigation-button.tsx","../../../packages/kos-ddk-components/src/styles/sidebar/sidebar.ts","../../../packages/kos-ddk-components/src/styles/sub-nav-button/sub-nav-button.tsx","../../../packages/kos-ddk-components/src/styles/summary-action-item/summary-action-item.tsx","../../../packages/kos-ddk-components/src/styles/tab-view-container/tab-view-container.tsx","../../../packages/kos-ddk-components/src/styles/tap-and-hold-button/tap-and-hold-button.tsx","../../../packages/kos-ddk-components/src/styles/text/text.tsx","../../../packages/kos-ddk-components/src/components/action-card/action-card.tsx","../../../packages/kos-ddk-components/src/components/back-button/back-button.tsx","../../../packages/kos-ddk-components/src/components/card-button-grid/card-button-grid.tsx","../../../packages/kos-ddk-components/src/components/close-button/close-button.tsx","../../../packages/kos-ddk-components/src/components/compact-close-button/compact-close-button.tsx","../../../packages/kos-ddk-components/src/components/modal/content/content.tsx","../../../packages/kos-ddk-components/src/components/modal/footer/footer.tsx","../../../packages/kos-ddk-components/src/components/modal/footer/cancel-proceed-footer.tsx","../../../packages/kos-ddk-components/src/components/menu-button/menu-button.tsx","../../../packages/kos-ddk-components/src/components/modal/header/header.tsx","../../../node_modules/@react-spring/rafz/dist/react-spring_rafz.modern.mjs","../../../node_modules/@react-spring/shared/dist/react-spring_shared.modern.mjs","../../../node_modules/@react-spring/animated/dist/react-spring_animated.modern.mjs","../../../node_modules/@react-spring/core/dist/react-spring_core.modern.mjs","../../../node_modules/@react-spring/web/dist/react-spring_web.modern.mjs","../../../packages/kos-ddk-components/src/components/modal/modal-content/modal-content.tsx","../../../packages/kos-ddk-components/src/components/modal/modal.tsx","../../../packages/kos-ddk-components/src/components/modal/modal-container/modal-container.tsx","../../../packages/kos-ddk-components/src/components/workflow-modal/workflow-modal.tsx","../../../packages/kos-ddk-components/src/components/confirmation-modal/confirmation-modal.tsx","../../../packages/kos-ddk-components/src/components/dashboard-card/dashboard-card.tsx","../../../packages/kos-ddk-components/src/components/dial/dial.tsx","../../../packages/kos-ddk-components/src/components/dropdown/dropdown.tsx","../../../packages/kos-ddk-components/src/components/failure-card/failure-card.tsx","../../../packages/kos-ddk-components/src/components/table/table.tsx","../../../packages/kos-ddk-components/src/components/info-table/info-table.tsx","../../../packages/kos-ddk-components/src/components/frame/frame-body/frame-body.tsx","../../../packages/kos-ddk-components/src/components/frame/frame-container/frame-container.tsx","../../../packages/kos-ddk-components/src/tools/bytes.ts","../../../packages/kos-ddk-components/src/tools/colour.ts","../../../packages/kos-ddk-components/src/tools/useKeyboardToggle.ts","../../../packages/kos-ddk-components/src/components/fuel-gauge/fuel-gauge.tsx","../../../packages/kos-ddk-components/src/components/full-screen-modal/full-screen-modal.tsx","../../../packages/kos-ddk-components/src/components/full-screen-modal/full-screen-header/full-screen-header.tsx","../../../packages/kos-ddk-components/src/components/grid/grid.tsx","../../../packages/kos-ddk-components/src/components/info-card/info-card.tsx","../../../packages/kos-ddk-components/src/components/info-message/info-message.tsx","../../../node_modules/react-simple-keyboard/build/index.js","../../../packages/kos-ddk-components/src/components/keyboard/keyboard.tsx","../../../packages/kos-ddk-components/src/components/input-card/input-card.tsx","../../../packages/kos-ddk-components/src/components/input-range-with-unit-card/input-range-with-unit-card.tsx","../../../packages/kos-ddk-components/src/components/input-type-password/input-type-password.tsx","../../../packages/kos-ddk-components/src/components/multi-dial/multi-dial.tsx","../../../packages/kos-ddk-components/src/components/picker-item-renderer/picker-item-renderer.tsx","../../../packages/kos-ddk-components/src/components/multi-picker/multi-picker.tsx","../../../packages/kos-ddk-components/src/components/multi-picker-card/multi-picker-card.tsx","../../../packages/kos-ddk-components/src/components/notification-card/notification-card.tsx","../../../packages/kos-ddk-components/src/components/numpad/numpad.tsx","../../../packages/kos-ddk-components/src/components/picker/picker.tsx","../../../packages/kos-ddk-components/src/components/picker-card/picker-card.tsx","../../../packages/kos-ddk-components/src/components/placeholder-message/placeholder-message.tsx","../../../packages/kos-ddk-components/src/components/portal/portal.tsx","../../../packages/kos-ddk-components/src/components/status-bar/status-bar.tsx","../../../packages/kos-ddk-components/src/components/progress-bar/progress-bar.tsx","../../../packages/kos-ddk-components/src/components/radio-card/radio-card.tsx","../../../packages/kos-ddk-components/src/components/schedule-table/schedule-table-header.tsx","../../../packages/kos-ddk-components/src/components/toggle/toggle.tsx","../../../packages/kos-ddk-components/src/components/schedule-table/schedule-table-row.tsx","../../../packages/kos-ddk-components/src/components/schedule-table/schedule-table.tsx","../../../packages/kos-ddk-components/src/components/sidebar-close-button/sidebar-close-button.tsx","../../../packages/kos-ddk-components/src/components/sidebar/sidebar.tsx","../../../packages/kos-ddk-components/src/components/static-input-card/static-input-card.tsx","../../../packages/kos-ddk-components/src/components/status-card/status-card.tsx","../../../packages/kos-ddk-components/src/components/status-indicator/status-indicator.tsx","../../../packages/kos-ddk-components/src/components/steps-indicator-label/steps-indicator-label.tsx","../../../packages/kos-ddk-components/src/components/steps-side-nav/steps-side-nav.tsx","../../../packages/kos-ddk-components/src/components/sub-nav/sub-nav.tsx","../../../packages/kos-ddk-components/src/components/sub-nav-container/sub-nav-container.tsx","../../../packages/kos-ddk-components/src/components/switch/switch.tsx","../../../packages/kos-ddk-components/src/components/switch-card/switch-card.tsx","../../../packages/kos-ddk-components/src/components/switch-picker-card/switch-picker-card.tsx","../../../packages/kos-ddk-components/src/components/tabs/tabs.tsx","../../../packages/kos-ddk-components/src/hooks/router/useNavigate.tsx","../../../packages/kos-ddk-components/src/hooks/text/useAbbreviation.tsx","../../../packages/kos-ddk-components/src/components/tab-router/tab-router.tsx","../../../packages/kos-ddk-components/src/components/tap-event-viewer/tap-event-viewer.tsx","../../../packages/kos-ddk-components/src/components/time-input-modal/time-input-modal.tsx","../../../packages/kos-ddk-components/src/components/toggle-card/toggle-card.tsx","../../../packages/kos-ddk-components/src/components/top-navigation-button/top-navigation-button.tsx","../../../packages/kos-ddk-components/src/components/top-navigation-button-list/top-navigation-button-list.tsx","../../../packages/kos-ddk-components/src/components/top-navigation-icon-button/top-navigation-icon-button.tsx","../../../packages/kos-ddk-components/src/components/top-navigation-icon-button-list/top-navigation-icon-button-list.tsx","../../../packages/kos-ddk-components/src/components/top-navigation/top-navigation.tsx","../../../packages/kos-ddk-components/src/components/view/view.tsx","../../../packages/kos-ddk-components/src/components/volume-back-button/volume-back-button.tsx"],"sourcesContent":["import { ReactNode, createContext, useContext } from \"react\";\nimport type { ModalMode } from \"../../components\";\n\nexport type ComponentMode = \"standard\" | \"compact\";\n\nconst defaultComponentConfigurationOptions: ComponentConfigurationOptions = {\n componentModeOverride: \"standard\",\n enableDialAnimation: true,\n enableModalAnimation: true,\n enableSidebarAnimation: true,\n modalModeOverride: undefined,\n};\n\ninterface ComponentConfigurationOptions {\n componentModeOverride?: ComponentMode;\n enableDialAnimation?: boolean;\n enableModalAnimation?: boolean;\n enableSidebarAnimation?: boolean;\n modalModeOverride?: ModalMode;\n}\n\nexport const ComponentConfigurationContext =\n createContext<ComponentConfigurationOptions>(\n defaultComponentConfigurationOptions\n );\n\ninterface ComponentConfigurationProviderProps {\n children?: ReactNode;\n value?: ComponentConfigurationOptions;\n}\n\nexport const ComponentConfigurationProvider = ({\n children,\n value = defaultComponentConfigurationOptions,\n}: ComponentConfigurationProviderProps) => (\n <ComponentConfigurationContext.Provider value={value}>\n {children}\n </ComponentConfigurationContext.Provider>\n);\n\nexport const useComponentConfigurationContext = () => {\n const context = useContext(ComponentConfigurationContext);\n if (!context) {\n throw new Error(\n \"useComponentConfigurationContext must be used within a ComponentConfigurationProvider\"\n );\n }\n return context;\n};\n","export interface ExperienceProps {\n onComplete: () => void;\n onSkip?: () => void;\n}\n\nexport type Experience<T extends Record<string, any> = Record<string, any>> =\n React.FC<ExperienceProps & T>;\n\nexport interface ExperienceMap {\n [key: string]: Experience;\n}\n\nexport const useExperience = (id: string, experienceMap: ExperienceMap) =>\n experienceMap[id];\n","import { useMemo } from \"react\";\nimport { Experience } from \".\";\n\nexport interface ViewExperience {\n id: string;\n label: string;\n component?: Experience;\n}\n\nexport interface ViewExperienceMap {\n [key: string]: ViewExperience;\n}\n\nexport const useViewExperienceListMap = (\n viewExperienceList: ViewExperience[]\n) =>\n useMemo(\n () =>\n viewExperienceList.reduce<ViewExperienceMap>(\n (previousValue, currentValue) => {\n previousValue[currentValue.id] = currentValue;\n\n return previousValue;\n },\n {}\n ),\n [viewExperienceList]\n );\n\nexport const useViewExperience = (\n id?: string,\n experienceMap?: ViewExperienceMap\n) => {\n if (!id || !experienceMap) return undefined;\n\n return experienceMap[id]?.component;\n};\n","import isPropValid from \"@emotion/is-prop-valid\";\nimport styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\n\nexport interface ActionItemProps {\n children?: ReactNode;\n disabled?: boolean;\n shadow?: boolean;\n}\n\nexport const ActionItem = styled(\"div\", {\n shouldForwardProp: (prop) => isPropValid(prop),\n})<ActionItemProps>`\n align-items: center;\n\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-action-item-background-color-disabled)\"\n : \"var(--ddk-component-action-item-background-color-default)\"};\n\n border-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-action-item-border-color-disabled)\"\n : \"var(--ddk-component-action-item-border-color-default)\"};\n\n border-radius: var(--ddk-component-action-item-border-radius);\n border-style: solid;\n border-width: var(--ddk-component-action-item-border-width);\n\n box-shadow: ${(props) =>\n props.shadow\n ? \"var(--ddk-generic-box-shadow-large)\"\n : \"var(--ddk-component-action-item-box-shadow)\"};\n\n box-sizing: border-box;\n\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-action-item-color-disabled)\"\n : \"var(--ddk-component-action-item-color-default)\"};\n\n display: inline-flex;\n font-family: var(--ddk-component-action-item-font-family);\n font-size: var(--ddk-semantic-control-xs-font-size);\n font-weight: var(--ddk-component-action-item-font-weight);\n height: var(--ddk-component-action-item-height);\n justify-content: space-between;\n min-width: var(--ddk-component-action-item-min-width);\n overflow: hidden;\n padding: var(--ddk-component-action-item-padding);\n user-select: none;\n white-space: nowrap;\n`;\n","import isPropValid from \"@emotion/is-prop-valid\";\nimport styled from \"@emotion/styled\";\nimport { ActionItem, ActionItemProps } from \"../action-item\";\nimport type { SerializedStyles } from \"@emotion/react\";\n\nconst Container = styled.div`\n align-items: center;\n display: flex;\n gap: var(--ddk-component-action-item-button-container-gap);\n white-space: nowrap;\n width: var(--ddk-component-action-item-button-container-width);\n`;\n\nconst Content = styled.div`\n display: flex;\n justify-content: space-between;\n width: 100%;\n`;\ninterface UnitValueProps {\n disabled?: boolean;\n}\n\nconst UnitValue = styled.div<UnitValueProps>`\n align-items: center;\n\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-action-item-unit-background-color-disabled)\"\n : \"var(--ddk-component-action-item-unit-background-color-default)\"};\n\n border-color: var(--ddk-component-action-item-unit-border-color);\n border-left-style: solid;\n border-left-width: var(--ddk-component-action-item-unit-border-width);\n border-radius: var(--ddk-component-action-item-unit-border-radius);\n box-sizing: border-box;\n\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-action-item-unit-color-disabled)\"\n : \"var(--ddk-component-action-item-unit-color-default)\"};\n\n display: flex;\n font-size: var(--ddk-component-action-item-unit-font-size);\n font-weight: var(--ddk-component-action-item-unit-font-weight);\n height: var(--ddk-component-action-item-unit-height);\n justify-content: center;\n margin: var(--ddk-component-action-item-unit-margin);\n min-width: var(--ddk-component-action-item-unit-min-width);\n padding: var(--ddk-component-action-item-unit-padding);\n white-space: nowrap;\n`;\n\nexport type UnitStyle = \"inline\" | \"external\";\n\nexport interface ActionItemButtonProps extends ActionItemProps {\n active?: boolean;\n Icon?: React.FunctionComponent;\n unitStyle?: UnitStyle;\n unitValue?: string;\n onPointerDown?: () => void;\n css?: SerializedStyles;\n}\n\nexport const ActionItemButtonStyles = styled(ActionItem, {\n shouldForwardProp: (prop) => isPropValid(prop),\n})<ActionItemButtonProps>`\n align-items: center;\n\n border-color: ${(props) =>\n props.active &&\n \"var(--ddk-component-action-item-button-border-color-active)\"};\n\n box-sizing: border-box;\n\n color: ${(props) =>\n props.active && \"var(--ddk-component-action-item-button-color-active)\"};\n\n cursor: ${(props) =>\n props.disabled || props.active ? \"default\" : \"pointer\"};\n\n gap: var(--ddk-component-action-item-button-gap);\n\n padding: ${(props) =>\n props.unitValue && \"0 0 0 var(--ddk-generic-padding-medium)\"};\n\n text-decoration: none;\n transition-duration: var(\n --ddk-component-action-item-button-transition-duration\n );\n transition-property: var(\n --ddk-component-action-item-button-transition-property\n );\n transition-timing-function: var(\n --ddk-component-action-item-button-transition-timing-function\n );\n width: 100%;\n\n &:hover {\n background-color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-action-item-button-background-color-hover)\"};\n\n border-color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-action-item-button-border-color-hover)\"};\n\n color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-action-item-button-color-hover)\"};\n }\n\n &:active {\n background-color: ${(props) =>\n !props.disabled &&\n \"var(--ddk-component-action-item-button-background-color-active)\"};\n\n border-color: ${(props) =>\n !props.disabled &&\n \"var(--ddk-component-action-item-button-border-color-active)\"};\n\n color: ${(props) =>\n !props.disabled &&\n \"var(--ddk-component-action-item-button-color-active)\"};\n }\n\n & > svg {\n color: ${(props) =>\n !props.disabled && \"var(--ddk-component-action-item-icon-color)\"};\n width: var(--ddk-generic-font-size-large);\n height: var(--ddk-generic-font-size-large);\n }\n`;\n\nexport const ActionItemButton = ({\n children,\n disabled,\n unitStyle = \"external\",\n unitValue,\n ...props\n}: ActionItemButtonProps) => (\n <Container>\n {unitStyle === \"inline\" ? (\n <ActionItemButtonStyles\n disabled={disabled}\n unitValue={unitValue}\n {...props}\n >\n <Content>{children}</Content>\n {unitValue !== undefined && (\n <UnitValue disabled={disabled}>{unitValue}</UnitValue>\n )}\n </ActionItemButtonStyles>\n ) : (\n <ActionItemButtonStyles disabled={disabled} {...props}>\n {children}\n </ActionItemButtonStyles>\n )}\n {unitStyle === \"external\" && unitValue !== undefined && unitValue}\n </Container>\n);\n","import styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\n\nexport interface ButtonProps\n extends React.DetailedHTMLProps<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n HTMLButtonElement\n > {\n active?: boolean;\n children: ReactNode;\n disabled?: boolean;\n shadow?: boolean;\n state?: string;\n mode?: \"primary\";\n}\n\nconst DefaultButton = styled.button<ButtonProps>`\n align-items: center;\n\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-button-background-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-button-background-color-active)\"\n : \"var(--ddk-component-button-background-color-default)\"};\n\n border-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-button-border-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-button-border-color-active)\"\n : \"var(--ddk-component-button-border-color-default)\"};\n\n border-radius: var(--ddk-component-button-border-radius);\n border-style: solid;\n border-width: var(--ddk-component-button-border-width-default);\n\n box-shadow: ${(props) =>\n props.shadow && \"var(--ddk-generic-box-shadow-large)\"};\n\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-button-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-button-color-active)\"\n : \"var(--ddk-component-button-color-default)\"};\n\n cursor: ${(props) =>\n props.disabled || props.active ? \"default\" : \"pointer\"};\n\n display: inline-flex;\n font-family: var(--ddk-component-button-font-family);\n font-size: var(--ddk-component-button-font-size);\n font-weight: var(--ddk-component-button-font-weight);\n gap: var(--ddk-component-button-gap);\n height: var(--ddk-component-button-height);\n justify-content: center;\n overflow: hidden;\n padding: var(--ddk-component-button-padding);\n user-select: none;\n text-overflow: ellipsis;\n transition-duration: var(--ddk-component-button-transition-duration);\n transition-property: var(--ddk-component-button-transition-property);\n transition-timing-function: var(\n --ddk-component-button-transition-timing-function\n );\n white-space: nowrap;\n min-width: var(--ddk-component-button-min-width);\n\n &:hover {\n background-color: ${(props) =>\n !(props.active || props.disabled || props.state) &&\n \"var(--ddk-component-button-background-color-hover)\"};\n\n border-color: ${(props) =>\n !(props.active || props.disabled || props.state) &&\n \"var(--ddk-component-button-border-color-hover)\"};\n\n color: ${(props) =>\n !(props.active || props.disabled || props.state) &&\n \"var(--ddk-component-button-color-hover)\"};\n }\n\n &:active {\n background-color: ${(props) =>\n !(props.disabled || props.state) &&\n \"var(--ddk-component-button-background-color-active)\"};\n\n border-color: ${(props) =>\n !(props.disabled || props.state) &&\n \"var(--ddk-component-button-border-color-active)\"};\n\n color: ${(props) =>\n !(props.disabled || props.state) &&\n \"var(--ddk-component-button-color-active)\"};\n }\n`;\n\nconst PrimaryButton = styled(DefaultButton)`\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-button-primary-background-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-button-primary-background-color-active)\"\n : \"var(--ddk-component-button-primary-background-color-default)\"};\n\n border-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-button-border-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-button-border-color-active)\"\n : \"var(--ddk-component-button-border-color-default)\"};\n\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-button-primary-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-button-primary-color-active)\"\n : \"var(--ddk-component-button-primary-color-default)\"};\n`;\n\nexport const Button = ({ disabled, onPointerDown, ...props }: ButtonProps) => {\n const pointerDown = (event) => {\n if (disabled) return;\n\n onPointerDown?.(event);\n };\n\n return props.mode === \"primary\" ? (\n <PrimaryButton disabled={disabled} onPointerDown={pointerDown} {...props} />\n ) : (\n <DefaultButton disabled={disabled} onPointerDown={pointerDown} {...props} />\n );\n};\n","import isPropValid from \"@emotion/is-prop-valid\";\nimport styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\n\nexport interface CardProps {\n children?: ReactNode;\n className?: string;\n collapse?: boolean;\n disabled?: boolean;\n float?: boolean;\n padding?: \"large\" | \"small\" | \"x-large\";\n}\n\nexport const Card = styled(\"div\", {\n shouldForwardProp: (prop) => isPropValid(prop),\n})<CardProps>`\n align-items: ${(props) => (props.collapse ? \"stretch\" : \"center\")};\n\n background-color: ${(props) =>\n props.collapse || props.float\n ? \"transparent\"\n : props.disabled\n ? \"var(--ddk-component-card-background-color-disabled)\"\n : \"var(--ddk-component-card-background-color-default)\"};\n\n border-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-card-border-color-disabled)\"\n : \"var(--ddk-component-card-border-color-default)\"};\n\n border-radius: var(--ddk-component-card-border-radius);\n border-style: ${(props) =>\n props.collapse || props.float ? \"none\" : \"solid\"};\n border-width: var(--ddk-component-card-border-width);\n\n box-shadow: ${(props) =>\n !props.collapse && !props.float && \"var(--ddk-component-card-box-shadow)\"};\n\n box-sizing: border-box;\n\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-card-color-disabled)\"\n : props.collapse || props.float\n ? \"var(--ddk-component-card-color-light)\"\n : \"var(--ddk-component-card-color-default)\"};\n\n display: flex;\n flex-direction: ${(props) => (props.collapse ? \"column\" : \"row\")};\n font-family: var(--ddk-component-card-font-family);\n font-size: var(--ddk-component-card-font-size);\n font-weight: var(--ddk-component-card-font-weight);\n gap: var(--ddk-component-card-gap);\n justify-content: var(--ddk-component-card-justify-content);\n margin-left: auto;\n min-height: var(--ddk-component-card-min-height);\n\n padding: ${(props) =>\n props.collapse || props.float\n ? \"0\"\n : props.padding === \"large\"\n ? \"var(--ddk-component-card-padding-large)\"\n : props.padding === \"x-large\"\n ? \"var(--ddk-component-card-padding-x-large)\"\n : \"var(--ddk-component-card-padding-small)\"};\n\n user-select: none;\n width: 100%;\n`;\n","import isPropValid from \"@emotion/is-prop-valid\";\nimport styled from \"@emotion/styled\";\nimport { Card, CardProps } from \"../card\";\n\nexport interface CardButtonProps extends CardProps {\n active?: boolean;\n onPointerDown?: () => void;\n}\n\nexport const CardButton = styled(Card, {\n shouldForwardProp: (prop) => isPropValid(prop),\n})<CardButtonProps>`\n align-items: center;\n\n background-color: ${(props) =>\n props.active && \"var(--ddk-component-card-button-background-color-active)\"};\n\n border-color: ${(props) =>\n props.active && \"var(--ddk-component-card-button-border-color-active)\"};\n\n color: ${(props) =>\n props.active && \"var(--ddk-component-card-button-color-active)\"};\n\n cursor: ${(props) =>\n props.disabled || props.active ? \"default\" : \"pointer\"};\n\n font-family: var(--ddk-component-card-button-font-family);\n font-size: var(--ddk-component-card-button-font-size);\n font-weight: var(--ddk-component-card-button-font-weight);\n gap: var(--ddk-component-card-button-gap);\n padding: var(--ddk-component-card-button-padding);\n box-sizing: border-box;\n height: var(--ddk-component-card-button-height);\n text-decoration: none;\n transition-duration: var(--ddk-component-card-button-transition-duration);\n transition-property: var(--ddk-component-card-button-transition-property);\n transition-timing-function: var(\n --ddk-component-card-button-transition-timing-function\n );\n\n &:hover {\n background-color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-card-button-background-color-hover)\"};\n\n border-color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-card-button-border-color-hover)\"};\n\n color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-card-button-color-hover)\"};\n }\n\n &:active {\n background-color: var(--ddk-component-card-button-background-color-active);\n border-color: var(--ddk-component-card-button-border-color-active);\n color: var(--ddk-component-card-button-color-active);\n }\n svg {\n width: var(--ddk-component-card-button-svg-size);\n height: var(--ddk-component-card-button-svg-size);\n }\n`;\n","import styled from \"@emotion/styled\";\n\nexport interface ContainerProps {\n contain?: boolean;\n size?: \"small\" | \"medium\" | \"large\";\n}\n\nexport const Container = styled.div<ContainerProps>`\n display: flex;\n flex-direction: column;\n height: 100%;\n margin: 0 auto;\n gap: 16px;\n max-width: ${(props) =>\n props.contain === false\n ? \"\"\n : props.size === \"small\"\n ? \"var(--ddk-component-container-max-width-small)\"\n : props.size === \"medium\"\n ? \"var(--ddk-component-container-max-width-medium)\"\n : \"var(--ddk-component-container-max-width-large)\"};\n\n overflow-y: auto;\n width: 100%;\n`;\n","import styled from \"@emotion/styled\";\nimport { ElementType, ReactNode } from \"react\";\n\nexport type IconButtonSize = \"small\" | \"medium\" | \"large\";\n\ninterface IconButtonProps {\n active?: boolean;\n children?: ReactNode;\n disabled?: boolean;\n icon: ElementType;\n size?: IconButtonSize;\n onPointerDown?: () => void;\n}\n\nconst IconButtonContainer = styled.div<Omit<IconButtonProps, \"icon\">>`\n align-items: center;\n\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-icon-button-icon-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-icon-button-icon-color-active)\"\n : \"var(--ddk-component-icon-button-icon-color-default)\"};\n\n cursor: ${(props) =>\n props.disabled || props.active ? \"default\" : \"pointer\"};\n\n display: inline-flex;\n flex-direction: column;\n gap: var(--ddk-component-icon-button-gap);\n text-align: center;\n\n font-size: ${(props) =>\n props.size === \"small\"\n ? \"var(--ddk-component-icon-button-width-small)\"\n : props.size === \"medium\"\n ? \"var(--ddk-component-icon-button-width-medium)\"\n : \"var(--ddk-component-icon-button-width-large)\"};\n\n position: relative;\n\n user-select: none;\n transition-duration: var(--ddk-component-icon-button-transition-duration);\n transition-property: var(--ddk-component-icon-button-transition-property);\n transition-timing-function: var(\n --ddk-component-icon-button-transition-timing-function\n );\n\n &:hover,\n &:hover > div {\n color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-icon-button-color-hover)\"};\n }\n\n &:active,\n &:active > div {\n color: ${(props) =>\n !props.disabled && \"var(--ddk-component-icon-button-color-active)\"};\n }\n\n & > div {\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-icon-button-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-icon-button-color-active)\"\n : \"var(--ddk-component-icon-button-color-default)\"};\n\n font-size: ${(props) =>\n props.size === \"small\"\n ? \"var(--ddk-component-icon-button-font-size-small)\"\n : props.size === \"medium\"\n ? \"var(--ddk-component-icon-button-font-size-medium)\"\n : \"var(--ddk-component-icon-button-font-size-large)\"};\n }\n`;\n\nexport const IconButton = ({\n children,\n icon: Icon,\n size = \"medium\",\n ...props\n}: IconButtonProps) => (\n <IconButtonContainer size={size} {...props}>\n <Icon />\n {children && <div>{children}</div>}\n </IconButtonContainer>\n);\n","import styled from \"@emotion/styled\";\nimport { SuccessIcon } from \"@kosdev-code/kos-ddk-styles\";\n\nexport const GreenTickIconStyle = styled(SuccessIcon)`\n box-sizing: var(--ddk-component-green-tick-icon-box-sizing);\n min-width: var(--ddk-component-green-tick-icon-min-width);\n min-height: var(--ddk-component-green-tick-icon-min-height);\n border-radius: var(--ddk-component-green-tick-icon-border-radius);\n background: var(--ddk-component-green-tick-icon-background);\n color: var(--ddk-component-green-tick-icon-color);\n padding: var(--ddk-component-green-tick-icon-padding);\n`;\n","import styled from \"@emotion/styled\";\nimport { InformationIcon } from \"@kosdev-code/kos-ddk-styles\";\n\nexport const InformationIconStyle = styled(InformationIcon)`\n min-width: var(--ddk-component-information-icon-min-width);\n min-height: var(--ddk-component-information-icon-min-height);\n border-radius: var(--ddk-component-information-icon-border-radius);\n background: var(--ddk-component-information-icon-background);\n color: var(--ddk-component-information-icon-color);\n`;\n","import styled from \"@emotion/styled\";\nimport { QuestionIcon } from \"@kosdev-code/kos-ddk-styles\";\n\nexport const QuestionIconStyle = styled(QuestionIcon)`\n min-width: var(--ddk-component-question-icon-min-width);\n min-height: var(--ddk-component-question-icon-min-height);\n border-radius: var(--ddk-component-question-icon-border-radius);\n background: var(--ddk-component-question-icon-background);\n color: var(--ddk-component-question-icon-color);\n`;\n","import styled from \"@emotion/styled\";\nimport { USBIcon } from \"@kosdev-code/kos-ddk-styles\";\n\nexport const UsbIconStyle = styled(USBIcon)<{ selected?: boolean }>`\n min-width: var(--ddk-component-question-icon-min-width);\n min-height: var(--ddk-component-question-icon-min-height);\n border-radius: var(--ddk-component-question-icon-border-radius);\n background: ${(props) =>\n props.selected\n ? \"var(--ddk-component-question-icon-background-selected)\"\n : \"var(--ddk-component-question-icon-background)\"};\n color: var(--ddk-component-question-icon-color);\n`;\n","import styled from \"@emotion/styled\";\nimport { Card } from \"../card\";\n\nexport const InfoCardHead = styled(Card)`\n background-color: var(--ddk-component-info-card-header-background-color);\n border-bottom-left-radius: 0px;\n border-bottom-right-radius: 0px;\n font-weight: var(--ddk-component-info-card-header-font-weight);\n padding: var(--ddk-component-info-card-header-padding);\n`;\n","import styled from \"@emotion/styled\";\n\nexport const InfoContainer = styled.div`\n background-color: var(--ddk-component-info-container-background-color);\n border: var(--ddk-component-info-container-border);\n border-radius: var(--ddk-component-info-container-border-radius);\n font-size: var(--ddk-component-info-container-font-size);\n font-weight: var(--ddk-component-info-container-font-weight);\n padding: var(--ddk-component-info-container-padding);\n`;\n","import styled from \"@emotion/styled\";\n\nexport const LargeText = styled.div`\n color: var(--ddk-generic-color-grey-100);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: 48px;\n font-style: normal;\n font-weight: 600;\n letter-spacing: 0.72px;\n line-height: 120%;\n`;\n\nexport const Heading = styled.h1`\n color: var(--ddk-generic-color-grey-100);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: 36px;\n font-style: normal;\n font-weight: 600;\n letter-spacing: 0.9px;\n line-height: 120%;\n`;\n\nexport const Subheading = styled.h2`\n color: var(--ddk-generic-color-grey-100);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: 28px;\n font-style: normal;\n font-weight: 600;\n letter-spacing: -1.12px;\n line-height: 120%;\n`;\n\nexport const UtilityModalHeading = styled.div`\n color: var(--ddk-generic-color-grey-50, #888);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: 24px;\n font-style: normal;\n font-weight: 600;\n line-height: 120%; /* 28.8px */\n letter-spacing: -0.48px;\n user-select: none;\n`;\n\nexport const UtilityModalSubHeading = styled.div`\n color: var(--ddk-generic-color-grey-50, #888);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 135%; /* 21.6px */\n letter-spacing: 0.64px;\n user-select: none;\n`;\n\nexport const SettingsSubheading = styled.div`\n color: var(--ddk-generic-color-grey-70, #414141);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: 20px;\n font-style: normal;\n font-weight: 600;\n line-height: 135%;\n margin-bottom: 4px;\n`;\n\nexport const Body2 = styled.p`\n color: var(--ddk-generic-color-grey-100);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: 15px;\n font-style: normal;\n font-weight: 500;\n letter-spacing: -0.225px;\n line-height: 135%;\n`;\n\nexport const SmallText = styled.div`\n color: var(--ddk-generic-color-grey-100);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n letter-spacing: 0.48px;\n line-height: 120%;\n`;\n\n// Figma-mapped Typography Components\n\nexport const BodySmall = styled.div`\n color: var(--ddk-component-typography-body-small-color);\n font-family: var(--ddk-component-typography-body-small-font-family);\n font-size: var(--ddk-component-typography-body-small-font-size);\n font-style: var(--ddk-component-typography-body-small-font-style);\n font-weight: var(--ddk-component-typography-body-small-font-weight);\n letter-spacing: var(--ddk-component-typography-body-small-letter-spacing);\n line-height: var(--ddk-component-typography-body-small-line-height);\n`;\n\nexport const BodySmallInformation = styled(BodySmall)`\n color: var(--ddk-component-typography-label-date-information-color);\n`;\n\nexport const BodyMedium = styled.div`\n color: var(--ddk-component-typography-body-medium-color);\n font-family: var(--ddk-component-typography-body-medium-font-family);\n font-size: var(--ddk-component-typography-body-medium-font-size);\n font-style: var(--ddk-component-typography-body-medium-font-style);\n font-weight: var(--ddk-component-typography-body-medium-font-weight);\n letter-spacing: var(--ddk-component-typography-body-medium-letter-spacing);\n line-height: var(--ddk-component-typography-body-medium-line-height);\n`;\n\nexport const BodyLarge = styled.div`\n color: var(--ddk-component-typography-body-large-color);\n font-family: var(--ddk-component-typography-body-large-font-family);\n font-size: var(--ddk-component-typography-body-large-font-size);\n font-style: var(--ddk-component-typography-body-large-font-style);\n font-weight: var(--ddk-component-typography-body-large-font-weight);\n letter-spacing: var(--ddk-component-typography-body-large-letter-spacing);\n line-height: var(--ddk-component-typography-body-large-line-height);\n`;\n\nexport const BodyMediumInformation = styled(BodyMedium)`\n color: var(--ddk-component-typography-label-information-color);\n`;\n\nexport const BodyLargeInformation = styled(BodyLarge)`\n color: var(--ddk-component-typography-label-information-color);\n font-weight: var(--ddk-component-typography-body-medium-font-weight);\n`;\n\nexport const ErrorText = styled.div`\n color: var(--ddk-component-typography-error-text-color);\n font-family: var(--ddk-component-typography-error-text-font-family);\n font-size: var(--ddk-component-typography-error-text-font-size);\n font-style: var(--ddk-component-typography-error-text-font-style);\n font-weight: var(--ddk-component-typography-error-text-font-weight);\n letter-spacing: var(--ddk-component-typography-error-text-letter-spacing);\n line-height: var(--ddk-component-typography-error-text-line-height);\n`;\n\nexport const HeadingMedium = styled.div`\n color: var(--ddk-component-typography-heading-medium-color);\n font-family: var(--ddk-component-typography-heading-medium-font-family);\n font-size: var(--ddk-component-typography-heading-medium-font-size);\n font-style: var(--ddk-component-typography-heading-medium-font-style);\n font-weight: var(--ddk-component-typography-heading-medium-font-weight);\n letter-spacing: var(--ddk-component-typography-heading-medium-letter-spacing);\n line-height: var(--ddk-component-typography-heading-medium-line-height);\n`;\n\nexport const HeadingLarge = styled.div`\n color: var(--ddk-component-typography-heading-large-color);\n font-family: var(--ddk-component-typography-heading-large-font-family);\n font-size: var(--ddk-component-typography-heading-large-font-size);\n font-style: var(--ddk-component-typography-heading-large-font-style);\n font-weight: var(--ddk-component-typography-heading-large-font-weight);\n letter-spacing: var(--ddk-component-typography-heading-large-letter-spacing);\n line-height: var(--ddk-component-typography-heading-large-line-height);\n`;\n\nexport const HeadingExtraLarge = styled.div`\n color: var(--ddk-component-typography-heading-x-large-color);\n font-family: var(--ddk-component-typography-heading-x-large-font-family);\n font-size: var(--ddk-component-typography-heading-x-large-font-size);\n font-style: var(--ddk-component-typography-heading-x-large-font-style);\n font-weight: var(--ddk-component-typography-heading-x-large-font-weight);\n letter-spacing: var(\n --ddk-component-typography-heading-x-large-letter-spacing\n );\n line-height: var(--ddk-component-typography-heading-x-large-line-height);\n`;\n\nexport const HeadingMediumInformation = styled(HeadingMedium)`\n color: var(--ddk-component-typography-label-information-color);\n`;\n\nexport const HeadingLargeInformation = styled(HeadingLarge)`\n color: var(--ddk-component-typography-label-information-color);\n`;\n\nexport const Label = styled.label`\n color: var(--ddk-component-typography-label-color);\n font-family: var(--ddk-component-typography-label-font-family);\n font-size: var(--ddk-component-typography-label-font-size);\n font-style: var(--ddk-component-typography-label-font-style);\n font-weight: var(--ddk-component-typography-label-font-weight);\n letter-spacing: var(--ddk-component-typography-label-letter-spacing);\n line-height: var(--ddk-component-typography-label-line-height);\n`;\nexport const LabelSmall = styled(Label)`\n font-size: var(--ddk-component-typography-label-font-size-small);\n`;\nexport const LabelExtraSmall = styled(Label)`\n font-size: var(--ddk-component-typography-label-font-size-x-small);\n`;\n\nexport const LabelDate = styled(LabelExtraSmall)`\n color: var(--ddk-component-typography-label-date-color);\n`;\nexport const LabelDateInformation = styled(LabelExtraSmall)`\n color: var(--ddk-component-typography-label-date-information-color);\n`;\n\nexport const LabelInformation = styled(Label)`\n color: var(--ddk-component-typography-label-information-color);\n`;\nexport const LabelInformationSmall = styled(LabelSmall)`\n color: var(--ddk-component-typography-label-information-color);\n`;\nexport const LabelInformationExtraSmall = styled(LabelExtraSmall)`\n color: var(--ddk-component-typography-label-information-color);\n`;\n","import styled from \"@emotion/styled\";\nimport { ErrorText } from \"../typography\";\nimport type React from \"react\";\nimport { forwardRef } from \"react\";\n\nconst Container = styled.div`\n align-items: var(--ddk-component-input-container-align-items);\n display: flex;\n flex-direction: var(--ddk-component-input-container-flex-direction);\n gap: var(--ddk-component-input-container-gap);\n`;\n\nexport interface InputProps {\n active?: boolean;\n disabled?: boolean;\n error?: string;\n isError?: boolean;\n readOnly?: boolean;\n shadow?: boolean;\n state?: string;\n value?: string;\n [key: string]: any;\n}\n\nexport const StyledInput = styled.input<InputProps>`\n align-items: center;\n\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-input-background-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-input-background-color-active)\"\n : props.isError\n ? \"var(--ddk-component-input-background-color-error)\"\n : \"var(--ddk-component-input-background-color-default)\"};\n\n border-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-input-border-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-input-border-color-active)\"\n : props.isError\n ? \"var(--ddk-component-input-border-color-error)\"\n : \"var(--ddk-component-input-border-color-default)\"};\n\n border-style: solid;\n border-width: var(--ddk-component-input-border-width);\n border-radius: var(--ddk-component-input-border-radius);\n\n box-shadow: ${(props) =>\n props.shadow && \"var(--ddk-generic-box-shadow-large)\"};\n\n box-sizing: border-box;\n\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-input-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-input-color-active)\"\n : \"var(--ddk-component-input-color-default)\"};\n\n cursor: ${(props) =>\n props.disabled || props.active ? \"default\" : \"pointer\"};\n\n display: inline-flex;\n font-family: var(--ddk-component-input-font-family);\n font-size: var(--ddk-component-input-font-size);\n gap: var(--ddk-component-input-gap);\n height: var(--ddk-component-input-height);\n justify-content: space-between;\n outline: none;\n padding: var(--ddk-component-input-padding);\n text-align: center;\n transition-duration: var(--ddk-component-input-transition-duration);\n transition-property: var(--ddk-component-input-transition-property);\n transition-timing-function: var(\n --ddk-component-input-transition-timing-function\n );\n user-select: none;\n width: 100%;\n\n &:active {\n background-color: ${(props) =>\n !(props.disabled || props.state) &&\n \"var(--ddk-component-input-background-color-active)\"};\n\n border-color: ${(props) =>\n !(props.disabled || props.state) &&\n \"var(--ddk-component-input-border-color-active)\"};\n\n color: ${(props) =>\n !(props.disabled || props.state) &&\n \"var(--ddk-component-input-color-active)\"};\n }\n\n &:hover {\n background-color: ${(props) =>\n !(props.active || props.disabled || props.state) &&\n \"var(--ddk-component-input-background-color-hover)\"};\n\n border-color: ${(props) =>\n !(props.active || props.disabled || props.state) &&\n \"var(--ddk-component-input-border-color-hover)\"};\n\n color: ${(props) =>\n !(props.active || props.disabled || props.state) &&\n \"var(--ddk-component-input-color-hover)\"};\n }\n`;\n\nexport const Input = forwardRef<HTMLInputElement, InputProps>(\n ({ error, isError, ...props }: InputProps, ref) => (\n <Container>\n {error && <ErrorText>{error}</ErrorText>}\n <StyledInput ref={ref} isError={isError || !!error} {...props} />\n </Container>\n )\n);\n","import isPropValid from \"@emotion/is-prop-valid\";\nimport styled from \"@emotion/styled\";\nimport { Card } from \"../card\";\n\nexport const InstructionCard = styled(Card, {\n shouldForwardProp: (prop) => isPropValid(prop),\n})`\n align-items: flex-start;\n flex-direction: column;\n font-size: var(--ddk-component-instruction-card-font-size);\n gap: var(--ddk-component-instruction-card-gap);\n line-height: 135%;\n padding: var(--ddk-component-instruction-card-padding);\n\n & ol,\n ul {\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-instruction-card-gap);\n list-style-position: inside;\n margin: 0;\n padding: 0;\n }\n\n div {\n white-space: pre-wrap;\n }\n`;\n","import styled from \"@emotion/styled\";\n\nexport const ListContainer = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-list-container-gap);\n`;\n","import isPropValid from \"@emotion/is-prop-valid\";\nimport styled from \"@emotion/styled\";\n\nexport interface NavigationButtonProps {\n active?: boolean;\n}\n\nexport const NavigationButton = styled(\"button\", {\n shouldForwardProp: (prop) => isPropValid(prop),\n})<NavigationButtonProps>`\n align-items: center;\n\n background-color: ${(props) =>\n props.active\n ? \"var(--ddk-component-navigation-button-background-color-active)\"\n : \"var(--ddk-component-navigation-button-background-color-default)\"};\n\n border: none;\n border-radius: var(--ddk-component-navigation-button-border-radius);\n\n color: ${(props) =>\n props.active\n ? \"var(--ddk-component-navigation-button-color-active)\"\n : \"var(--ddk-component-navigation-button-color-default)\"};\n\n cursor: ${(props) =>\n props.disabled || props.active ? \"default\" : \"pointer\"};\n\n display: inline-flex;\n font-family: var(--ddk-component-navigation-button-font-family);\n font-size: var(--ddk-component-navigation-button-font-size);\n font-weight: var(--ddk-component-navigation-button-font-weight);\n line-height: var(--ddk-component-navigation-button-line-height); /* 16.2px */\n letter-spacing: var(\n --ddk-component-navigation-button-letter-spacing\n ); /*1.68px */\n gap: var(--ddk-component-navigation-button-gap);\n padding: var(--ddk-component-navigation-button-padding);\n text-decoration: none;\n transition-duration: var(\n --ddk-component-navigation-button-transition-duration\n );\n transition-property: var(\n --ddk-component-navigation-button-transition-property\n );\n transition-timing-function: var(\n --ddk-component-navigation-button-transition-timing-function\n );\n user-select: none;\n\n &:hover {\n background-color: ${(props) =>\n !props.active &&\n \"var(--ddk-component-navigation-button-background-color-hover)\"};\n\n color: ${(props) =>\n !props.active && \"var(--ddk-component-navigation-button-color-hover)\"};\n }\n\n &:active {\n background-color: var(\n --ddk-component-navigation-button-background-color-active\n );\n color: var(--ddk-component-navigation-button-color-active);\n }\n`;\n","import styled from \"@emotion/styled\";\n\nexport const SidebarNav = styled.div`\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 999;\n display: inline-flex;\n padding: 32px 96px 32px 40px;\n flex-direction: column;\n align-items: flex-start;\n gap: 64px;\n overflow: hidden;\n flex-shrink: 0;\n background: var(--ddk-generic-color-grey-5, #f9f9f9);\n box-shadow: 8px 0px 16px 0px rgba(0, 0, 0, 0.08),\n 0px 0px 4px 0px rgba(0, 0, 0, 0.04);\n`;\n\nexport const SidebarContent = styled.div`\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: var(--ddk-component-sidebar-padding-large);\n`;\n\nexport const SidebarHeader = styled.div`\n display: flex;\n gap: 16px;\n font-size: var(--ddk-component-sidebar-font-size-large);\n font-weight: 600;\n align-items: center;\n`;\n","import styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\n\nexport interface SubNavButtonProps {\n active?: boolean;\n children: ReactNode;\n}\nexport const SubNavButton = styled.button<SubNavButtonProps>`\n font-size: var(--ddk-component-sub-nav-button-font-size);\n font-weight: var(--ddk-generic-font-weight-medium);\n padding: var(--ddk-component-sub-nav-button-padding-small);\n background: ${(props) =>\n props.active ? \"var(--ddk-generic-color-grey-10)\" : \"transparent\"};\n border: none;\n cursor: pointer;\n display: block;\n width: 100%;\n color: ${(props) =>\n props.active\n ? \"var(--ddk-generic-color-grey-100)\"\n : \"var(--ddk-generic-color-grey-60)\"};\n border-radius: 2px;\n text-align: left;\n`;\n","import styled from \"@emotion/styled\";\n\nexport const NoDataSummary = styled.div`\n color: var(--ddk-component-summary-font-disabled-color);\n text-align: center;\n font-size: var(--ddk-component-summary-font-size-small);\n font-weight: var(--ddk-component-summary-font-weight);\n position: absolute;\n left: 50%;\n transform: translate(-50%);\n`;\n\nexport const BodyContent = styled.div`\n position: relative;\n left: 50%;\n transform: translate(-50%, -50%);\n text-align: center;\n`;\n\nexport const ShowMoreText = styled.div`\n font-size: var(--ddk-component-summary-show-more-font-size);\n font-weight: var(--ddk-component-summary-font-weight);\n line-height: 27px;\n color: var(--ddk-component-summary-show-more-color);\n`;\nexport const ShowMoreSubtext = styled.div`\n font-size: var(--ddk-component-summary-text-font-size);\n line-height: 16.2px;\n font-weight: var(--ddk-component-summary-font-weight);\n color: var(--ddk-component-summary-show-more-color);\n`;\n\nexport const SummaryHolderCardText = styled.div`\n font-size: var(--ddk-component-summary-text-font-size);\n line-height: 16.2px;\n font-weight: var(--ddk-component-summary-font-weight);\n color: white;\n`;\n","import styled from \"@emotion/styled\";\n\nexport const TabViewLayout = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-tab-view-layout-gap);\n padding: var(--ddk-component-tab-view-layout-padding);\n`;\n\nexport const TabContainer = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-tab-view-container-gap);\n padding: var(--ddk-component-tab-view-container-padding);\n width: 100%;\n`;\n","import styled from \"@emotion/styled\";\nimport { Button, ButtonProps } from \"../button\";\n\nexport type TapAndHoldButtonState = \"halt\" | \"idle\" | \"run\";\nexport interface TapAndHoldButtonProps extends ButtonProps {\n state?: TapAndHoldButtonState;\n}\n\nexport const TapAndHoldButton = styled(Button)<TapAndHoldButtonProps>`\n align-items: center;\n\n background-color: ${(props) =>\n props.disabled\n ? \"\"\n : props.state === \"run\"\n ? \"var(--ddk-component-button-background-color-run)\"\n : props.state === \"halt\"\n ? \"var(--ddk-component-button-background-color-halt)\"\n : \"\"};\n\n border-color: ${(props) =>\n props.disabled\n ? \"\"\n : props.state === \"run\"\n ? \"var(--ddk-component-button-border-color-run)\"\n : props.state === \"halt\"\n ? \"var(--ddk-component-button-border-color-halt)\"\n : \"\"};\n\n box-shadow: ${(props) =>\n props.state === \"run\"\n ? \"0 0 0 var(--ddk-component-button-border-width-run) var(--ddk-component-button-border-color-run)\"\n : props.state === \"halt\"\n ? \"0 0 0 var(--ddk-component-button-border-width-run) var(--ddk-component-button-border-color-halt)\"\n : \"\"};\n\n color: ${(props) =>\n props.disabled\n ? \"\"\n : props.state === \"run\"\n ? \"var(--ddk-component-button-color-run)\"\n : props.state === \"halt\"\n ? \"var(--ddk-component-button-color-halt)\"\n : \"\"};\n\n justify-content: center;\n margin: var(--ddk-component-tap-and-hold-button-margin);\n min-width: var(--ddk-component-tap-and-hold-button-min-width);\n padding: var(--ddk-component-tap-and-hold-button-padding);\n`;\n","import styled from \"@emotion/styled\";\n\nexport const TextContainer = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-input-card-text-container-gap);\n overflow: hidden;\n`;\n\nexport const Text = styled.div`\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n`;\n\nexport const Description = styled(Text)`\n color: var(--ddk-component-input-card-description-color);\n font-size: var(--ddk-component-input-card-description-font-size);\n font-weight: var(--ddk-component-input-card-description-font-weight);\n text-align: left;\n`;\n\nexport const Error = styled(Description)`\n color: var(--ddk-semantic-color-system-red);\n`;\n","import styled from \"@emotion/styled\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { Button, Card, type CardProps } from \"../../styles\";\n\nconst TextContainer = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-input-card-text-container-gap);\n overflow: hidden;\n`;\n\nconst Text = styled.div`\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n`;\n\ninterface DescriptionProps {\n multiline: boolean;\n}\n\nconst Description = styled(Text)<DescriptionProps>`\n color: var(--ddk-component-input-card-description-color);\n font-size: var(--ddk-component-input-card-description-font-size);\n font-weight: var(--ddk-component-input-card-description-font-weight);\n\n -webkit-box-orient: ${(props) => (props.multiline ? \"vertical\" : undefined)};\n -webkit-line-clamp: ${(props) => (props.multiline ? \"4\" : undefined)};\n display: ${(props) => (props.multiline ? \"-webkit-box\" : undefined)};\n white-space: ${(props) => (props.multiline ? \"normal\" : undefined)};\n`;\n\nexport interface ActionCardProps extends CardProps {\n buttonLabel: string;\n description?: string;\n label: string;\n onAction?: () => void;\n multiline?: boolean;\n}\n\nexport const ActionCard = ({\n buttonLabel,\n description,\n label,\n onAction,\n multiline,\n ...props\n}: ActionCardProps) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <Card collapse={componentModeOverride === \"compact\"} {...props}>\n <TextContainer>\n <Text>{label}</Text>\n {description && (\n <Description multiline={multiline === true}>\n {description}\n </Description>\n )}\n </TextContainer>\n <Button onPointerDown={onAction}>{buttonLabel}</Button>\n </Card>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { ChevronLeftIcon } from \"@kosdev-code/kos-ddk-styles\";\n\nexport const BackButton = styled(ChevronLeftIcon)`\n cursor: pointer;\n`;\n","import styled from \"@emotion/styled\";\nimport { ChevronRightIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport { ReactNode, type ElementType } from \"react\";\nimport { CardButton } from \"../../styles\";\n\nconst CardButtonGridContainer = styled.div`\n display: flex;\n flex-direction: column;\n flex: 1;\n gap: var(--ddk-component-card-button-grid-container-gap);\n`;\n\nexport interface CardItem {\n id: string;\n active?: boolean;\n label?: ReactNode;\n}\n\nexport interface CardButtonGridProps {\n CardButtonRenderer?: ElementType;\n items: CardItem[];\n onSelect?: (id: string) => void;\n showNavIcon?: boolean;\n [key: string]: any;\n}\n\nexport const CardButtonGrid = ({\n CardButtonRenderer = CardButton,\n items,\n onSelect,\n showNavIcon = true,\n ...props\n}: CardButtonGridProps) => (\n <CardButtonGridContainer {...props}>\n {items.map((item) => (\n <CardButtonRenderer\n key={item.id}\n active={item.active}\n onPointerDown={() => onSelect?.(item.id)}\n >\n {item.label}\n {showNavIcon && <ChevronRightIcon />}\n </CardButtonRenderer>\n ))}\n </CardButtonGridContainer>\n);\n","import {\n CloseIcon,\n CloseIconWithBackground,\n} from \"@kosdev-code/kos-ddk-styles\";\nimport { useKosTranslation } from \"@kosdev-code/kos-ui-sdk\";\nimport {\n ActionItemButtonProps,\n IconButton,\n IconButtonSize,\n} from \"../../styles\";\n\ninterface ExtendedActionItemButtonProps extends ActionItemButtonProps {\n fill?: boolean;\n label?: string | boolean;\n size?: IconButtonSize;\n}\n\nconst CloseText = () => {\n const { t } = useKosTranslation(\"common\");\n\n return t(\"close\");\n};\n\nexport const CloseButton = ({\n children,\n fill,\n label,\n size = \"medium\",\n ...props\n}: ExtendedActionItemButtonProps) => (\n <IconButton\n icon={fill ? CloseIconWithBackground : CloseIcon}\n size={size}\n {...props}\n >\n {label ?? <CloseText />}\n </IconButton>\n);\n","import { CompactCloseIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport {\n ActionItemButtonProps,\n IconButton,\n IconButtonSize,\n} from \"../../styles\";\n\ninterface ExtendedActionItemButtonProps extends ActionItemButtonProps {\n label?: string | boolean;\n size?: IconButtonSize;\n}\n\nexport const CompactCloseButton = ({\n children,\n label,\n size = \"medium\",\n ...props\n}: ExtendedActionItemButtonProps) => (\n <IconButton icon={CompactCloseIcon} size={size} {...props} />\n);\n","import styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\nimport { Container, ContainerProps } from \"../../../styles\";\nimport { useComponentConfigurationContext } from \"../../../core\";\n\ninterface ContentStyleProps {\n align?: \"center\" | \"top\";\n contain?: boolean;\n}\n\nconst ContentStyle = styled.div<ContentStyleProps>`\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-modal-content-gap);\n height: 100%;\n\n justify-content: ${(props) =>\n props.align\n ? props.align === \"top\"\n ? \"flex-start\"\n : \"center\"\n : \"var(--ddk-component-modal-content-justify-content)\"};\n\n overflow-x: hidden;\n overflow-y: auto;\n\n padding: ${(props) =>\n props.contain ? \"var(--ddk-component-modal-content-padding)\" : \"initial\"};\n\n width: 100%;\n`;\n\nexport interface ContentProps extends ContainerProps {\n align?: \"center\" | \"top\";\n children?: ReactNode;\n className?: string;\n}\n\nexport const Content = ({ align, children, className, size }: ContentProps) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <Container size={size}>\n <ContentStyle\n align={align}\n className={className}\n contain={componentModeOverride === \"compact\"}\n >\n {children}\n </ContentStyle>\n </Container>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { useComponentConfigurationContext } from \"../../../core\";\n\nconst DefaultFooter = styled.div`\n align-items: var(--ddk-component-modal-footer-align-items);\n box-sizing: border-box;\n display: flex;\n flex-direction: var(--ddk-component-modal-footer-flex-direction);\n flex-wrap: wrap;\n gap: var(--ddk-component-modal-footer-gap);\n justify-content: center;\n padding: var(--ddk-component-modal-footer-padding);\n width: 100%;\n`;\n\nconst CompactFooter = styled(DefaultFooter)`\n background-color: #ffffff;\n border-top: 1px solid #d2d4da;\n`;\n\nexport const Footer = (props) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return componentModeOverride === \"compact\" ? (\n <CompactFooter {...props} />\n ) : (\n <DefaultFooter {...props} />\n );\n};\n","import { useKosTranslation } from \"@kosdev-code/kos-ui-sdk\";\nimport { useComponentConfigurationContext } from \"../../../core\";\nimport { Button } from \"../../../styles\";\nimport { Footer } from \"./footer\";\n\nconst Text = ({ textKey }) => {\n const { t } = useKosTranslation(\"common\");\n\n return t(textKey);\n};\n\ninterface CancelProceedContentProps {\n cancelLabel?: string;\n onCancel?: () => void;\n onProceed?: () => void;\n proceedLabel?: string;\n canProceed?: boolean;\n}\n\nexport const CancelProceedFooter = ({\n cancelLabel,\n onCancel,\n onProceed,\n proceedLabel,\n canProceed = true,\n}: CancelProceedContentProps) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <Footer>\n {componentModeOverride === \"standard\" && (\n <Button onPointerDown={onCancel}>\n {cancelLabel ?? <Text textKey=\"cancel\" />}\n </Button>\n )}\n <Button disabled={!canProceed} mode=\"primary\" onPointerDown={onProceed}>\n {proceedLabel ?? <Text textKey=\"proceed\" />}\n </Button>\n </Footer>\n );\n};\n","import { CompactMenuIcon, MenuIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport {\n ActionItemButtonProps,\n IconButton,\n IconButtonSize,\n} from \"../../styles\";\nimport { useComponentConfigurationContext } from \"../../core\";\n\ninterface ExtendedActionItemButtonProps extends ActionItemButtonProps {\n label?: string;\n size?: IconButtonSize;\n}\n\nexport const MenuButton = ({\n children,\n label = \"Steps\",\n size = \"medium\",\n ...props\n}: ExtendedActionItemButtonProps) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <IconButton\n icon={componentModeOverride === \"compact\" ? CompactMenuIcon : MenuIcon}\n size={size}\n {...props}\n >\n {label}\n </IconButton>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { ReactNode, type ElementType } from \"react\";\nimport { HeadingMedium, LabelInformationSmall } from \"../../../styles\";\nimport { CloseButton as DefaultCloseButton } from \"../../close-button\";\nimport { MenuButton as DefaultOpenButton } from \"../../menu-button\";\n\ninterface HeaderContainerProps {\n contain?: boolean;\n}\n\nconst HeaderContainer = styled.div<HeaderContainerProps>`\n align-items: center;\n background-color: var(--ddk-component-modal-header-background-color);\n box-shadow: var(--ddk-component-modal-header-box-shadow);\n box-sizing: border-box;\n display: flex;\n flex-direction: var(--ddk-component-modal-header-flex-direction);\n gap: var(--ddk-component-modal-header-gap);\n min-height: var(--ddk-component-modal-header-height);\n justify-content: space-between;\n padding: ${(props) =>\n props.contain\n ? \"var(--ddk-component-modal-header-padding-maximized)\"\n : \"var(--ddk-component-modal-header-padding)\"};\n user-select: none;\n`;\n\nconst TitleContainer = styled.div`\n display: flex;\n flex-direction: var(\n --ddk-component-modal-header-title-container-flex-direction\n );\n gap: var(--ddk-component-modal-header-title-container-gap);\n text-align: var(--ddk-component-modal-header-title-container-text-align);\n white-space: var(--ddk-component-modal-header-title-container-white-space);\n`;\n\nconst SideContentContainer = styled.div`\n display: flex;\n flex-direction: column;\n height: 100%;\n justify-content: center;\n padding: var(--ddk-component-modal-header-side-content-padding);\n width: 40px;\n`;\n\nexport interface HeaderProps {\n CloseButton?: ElementType;\n closeButtonLabel?: string;\n contain?: boolean;\n leftContent?: ReactNode;\n onClose?: () => void;\n onOpen?: () => void;\n OpenButton?: ElementType;\n raiseCloseButton?: boolean;\n showCloseButton?: boolean;\n showOpenButton?: boolean;\n\n size?: \"small\" | \"medium\" | \"large\";\n subtitle?: ReactNode;\n title?: ReactNode;\n}\n\nexport const Header = ({\n CloseButton,\n closeButtonLabel,\n contain = false,\n leftContent,\n onClose,\n onOpen,\n OpenButton,\n raiseCloseButton,\n showCloseButton,\n showOpenButton,\n size = \"small\",\n subtitle,\n title,\n}: HeaderProps) => {\n const closeButton = CloseButton ? (\n <CloseButton />\n ) : (\n <DefaultCloseButton\n fill\n label={closeButtonLabel}\n size={size === \"small\" ? \"medium\" : size === \"large\" ? \"large\" : \"medium\"}\n />\n );\n\n const openButton = OpenButton ? (\n <OpenButton onPointerDown={onOpen} />\n ) : (\n <DefaultOpenButton onPointerDown={onOpen} />\n );\n\n return (\n <HeaderContainer contain={contain}>\n <SideContentContainer>\n {showOpenButton ? openButton : leftContent}\n </SideContentContainer>\n <TitleContainer>\n {title && <HeadingMedium>{title}</HeadingMedium>}\n {subtitle && <LabelInformationSmall>{subtitle}</LabelInformationSmall>}\n </TitleContainer>\n <SideContentContainer\n style={{ zIndex: raiseCloseButton ? 1 : \"initial\" }}\n onPointerDown={showCloseButton ? onClose : undefined}\n >\n {showCloseButton ? closeButton : undefined}\n </SideContentContainer>\n </HeaderContainer>\n );\n};\n","// src/index.ts\nvar updateQueue = makeQueue();\nvar raf = (fn) => schedule(fn, updateQueue);\nvar writeQueue = makeQueue();\nraf.write = (fn) => schedule(fn, writeQueue);\nvar onStartQueue = makeQueue();\nraf.onStart = (fn) => schedule(fn, onStartQueue);\nvar onFrameQueue = makeQueue();\nraf.onFrame = (fn) => schedule(fn, onFrameQueue);\nvar onFinishQueue = makeQueue();\nraf.onFinish = (fn) => schedule(fn, onFinishQueue);\nvar timeouts = [];\nraf.setTimeout = (handler, ms) => {\n const time = raf.now() + ms;\n const cancel = () => {\n const i = timeouts.findIndex((t) => t.cancel == cancel);\n if (~i)\n timeouts.splice(i, 1);\n pendingCount -= ~i ? 1 : 0;\n };\n const timeout = { time, handler, cancel };\n timeouts.splice(findTimeout(time), 0, timeout);\n pendingCount += 1;\n start();\n return timeout;\n};\nvar findTimeout = (time) => ~(~timeouts.findIndex((t) => t.time > time) || ~timeouts.length);\nraf.cancel = (fn) => {\n onStartQueue.delete(fn);\n onFrameQueue.delete(fn);\n onFinishQueue.delete(fn);\n updateQueue.delete(fn);\n writeQueue.delete(fn);\n};\nraf.sync = (fn) => {\n sync = true;\n raf.batchedUpdates(fn);\n sync = false;\n};\nraf.throttle = (fn) => {\n let lastArgs;\n function queuedFn() {\n try {\n fn(...lastArgs);\n } finally {\n lastArgs = null;\n }\n }\n function throttled(...args) {\n lastArgs = args;\n raf.onStart(queuedFn);\n }\n throttled.handler = fn;\n throttled.cancel = () => {\n onStartQueue.delete(queuedFn);\n lastArgs = null;\n };\n return throttled;\n};\nvar nativeRaf = typeof window != \"undefined\" ? window.requestAnimationFrame : (\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n () => {\n }\n);\nraf.use = (impl) => nativeRaf = impl;\nraf.now = typeof performance != \"undefined\" ? () => performance.now() : Date.now;\nraf.batchedUpdates = (fn) => fn();\nraf.catch = console.error;\nraf.frameLoop = \"always\";\nraf.advance = () => {\n if (raf.frameLoop !== \"demand\") {\n console.warn(\n \"Cannot call the manual advancement of rafz whilst frameLoop is not set as demand\"\n );\n } else {\n update();\n }\n};\nvar ts = -1;\nvar pendingCount = 0;\nvar sync = false;\nfunction schedule(fn, queue) {\n if (sync) {\n queue.delete(fn);\n fn(0);\n } else {\n queue.add(fn);\n start();\n }\n}\nfunction start() {\n if (ts < 0) {\n ts = 0;\n if (raf.frameLoop !== \"demand\") {\n nativeRaf(loop);\n }\n }\n}\nfunction stop() {\n ts = -1;\n}\nfunction loop() {\n if (~ts) {\n nativeRaf(loop);\n raf.batchedUpdates(update);\n }\n}\nfunction update() {\n const prevTs = ts;\n ts = raf.now();\n const count = findTimeout(ts);\n if (count) {\n eachSafely(timeouts.splice(0, count), (t) => t.handler());\n pendingCount -= count;\n }\n if (!pendingCount) {\n stop();\n return;\n }\n onStartQueue.flush();\n updateQueue.flush(prevTs ? Math.min(64, ts - prevTs) : 16.667);\n onFrameQueue.flush();\n writeQueue.flush();\n onFinishQueue.flush();\n}\nfunction makeQueue() {\n let next = /* @__PURE__ */ new Set();\n let current = next;\n return {\n add(fn) {\n pendingCount += current == next && !next.has(fn) ? 1 : 0;\n next.add(fn);\n },\n delete(fn) {\n pendingCount -= current == next && next.has(fn) ? 1 : 0;\n return next.delete(fn);\n },\n flush(arg) {\n if (current.size) {\n next = /* @__PURE__ */ new Set();\n pendingCount -= current.size;\n eachSafely(current, (fn) => fn(arg) && next.add(fn));\n pendingCount += next.size;\n current = next;\n }\n }\n };\n}\nfunction eachSafely(values, each) {\n values.forEach((value) => {\n try {\n each(value);\n } catch (e) {\n raf.catch(e);\n }\n });\n}\nvar __raf = {\n /** The number of pending tasks */\n count() {\n return pendingCount;\n },\n /** Whether there's a raf update loop running */\n isRunning() {\n return ts >= 0;\n },\n /** Clear internal state. Never call from update loop! */\n clear() {\n ts = -1;\n timeouts = [];\n onStartQueue = makeQueue();\n updateQueue = makeQueue();\n onFrameQueue = makeQueue();\n writeQueue = makeQueue();\n onFinishQueue = makeQueue();\n pendingCount = 0;\n }\n};\nexport {\n __raf,\n raf\n};\n//# sourceMappingURL=react-spring_rafz.modern.mjs.map","var __defProp = Object.defineProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\n\n// src/globals.ts\nvar globals_exports = {};\n__export(globals_exports, {\n assign: () => assign,\n colors: () => colors,\n createStringInterpolator: () => createStringInterpolator,\n skipAnimation: () => skipAnimation,\n to: () => to,\n willAdvance: () => willAdvance\n});\nimport { raf } from \"@react-spring/rafz\";\n\n// src/helpers.ts\nfunction noop() {\n}\nvar defineHidden = (obj, key, value) => Object.defineProperty(obj, key, { value, writable: true, configurable: true });\nvar is = {\n arr: Array.isArray,\n obj: (a) => !!a && a.constructor.name === \"Object\",\n fun: (a) => typeof a === \"function\",\n str: (a) => typeof a === \"string\",\n num: (a) => typeof a === \"number\",\n und: (a) => a === void 0\n};\nfunction isEqual(a, b) {\n if (is.arr(a)) {\n if (!is.arr(b) || a.length !== b.length)\n return false;\n for (let i = 0; i < a.length; i++) {\n if (a[i] !== b[i])\n return false;\n }\n return true;\n }\n return a === b;\n}\nvar each = (obj, fn) => obj.forEach(fn);\nfunction eachProp(obj, fn, ctx) {\n if (is.arr(obj)) {\n for (let i = 0; i < obj.length; i++) {\n fn.call(ctx, obj[i], `${i}`);\n }\n return;\n }\n for (const key in obj) {\n if (obj.hasOwnProperty(key)) {\n fn.call(ctx, obj[key], key);\n }\n }\n}\nvar toArray = (a) => is.und(a) ? [] : is.arr(a) ? a : [a];\nfunction flush(queue, iterator) {\n if (queue.size) {\n const items = Array.from(queue);\n queue.clear();\n each(items, iterator);\n }\n}\nvar flushCalls = (queue, ...args) => flush(queue, (fn) => fn(...args));\nvar isSSR = () => typeof window === \"undefined\" || !window.navigator || /ServerSideRendering|^Deno\\//.test(window.navigator.userAgent);\n\n// src/globals.ts\nvar createStringInterpolator;\nvar to;\nvar colors = null;\nvar skipAnimation = false;\nvar willAdvance = noop;\nvar assign = (globals) => {\n if (globals.to)\n to = globals.to;\n if (globals.now)\n raf.now = globals.now;\n if (globals.colors !== void 0)\n colors = globals.colors;\n if (globals.skipAnimation != null)\n skipAnimation = globals.skipAnimation;\n if (globals.createStringInterpolator)\n createStringInterpolator = globals.createStringInterpolator;\n if (globals.requestAnimationFrame)\n raf.use(globals.requestAnimationFrame);\n if (globals.batchedUpdates)\n raf.batchedUpdates = globals.batchedUpdates;\n if (globals.willAdvance)\n willAdvance = globals.willAdvance;\n if (globals.frameLoop)\n raf.frameLoop = globals.frameLoop;\n};\n\n// src/FrameLoop.ts\nimport { raf as raf2 } from \"@react-spring/rafz\";\nvar startQueue = /* @__PURE__ */ new Set();\nvar currentFrame = [];\nvar prevFrame = [];\nvar priority = 0;\nvar frameLoop = {\n get idle() {\n return !startQueue.size && !currentFrame.length;\n },\n /** Advance the given animation on every frame until idle. */\n start(animation) {\n if (priority > animation.priority) {\n startQueue.add(animation);\n raf2.onStart(flushStartQueue);\n } else {\n startSafely(animation);\n raf2(advance);\n }\n },\n /** Advance all animations by the given time. */\n advance,\n /** Call this when an animation's priority changes. */\n sort(animation) {\n if (priority) {\n raf2.onFrame(() => frameLoop.sort(animation));\n } else {\n const prevIndex = currentFrame.indexOf(animation);\n if (~prevIndex) {\n currentFrame.splice(prevIndex, 1);\n startUnsafely(animation);\n }\n }\n },\n /**\n * Clear all animations. For testing purposes.\n *\n * ☠️ Never call this from within the frameloop.\n */\n clear() {\n currentFrame = [];\n startQueue.clear();\n }\n};\nfunction flushStartQueue() {\n startQueue.forEach(startSafely);\n startQueue.clear();\n raf2(advance);\n}\nfunction startSafely(animation) {\n if (!currentFrame.includes(animation))\n startUnsafely(animation);\n}\nfunction startUnsafely(animation) {\n currentFrame.splice(\n findIndex(currentFrame, (other) => other.priority > animation.priority),\n 0,\n animation\n );\n}\nfunction advance(dt) {\n const nextFrame = prevFrame;\n for (let i = 0; i < currentFrame.length; i++) {\n const animation = currentFrame[i];\n priority = animation.priority;\n if (!animation.idle) {\n willAdvance(animation);\n animation.advance(dt);\n if (!animation.idle) {\n nextFrame.push(animation);\n }\n }\n }\n priority = 0;\n prevFrame = currentFrame;\n prevFrame.length = 0;\n currentFrame = nextFrame;\n return currentFrame.length > 0;\n}\nfunction findIndex(arr, test) {\n const index = arr.findIndex(test);\n return index < 0 ? arr.length : index;\n}\n\n// src/clamp.ts\nvar clamp = (min, max, v) => Math.min(Math.max(v, min), max);\n\n// src/colors.ts\nvar colors2 = {\n transparent: 0,\n aliceblue: 4042850303,\n antiquewhite: 4209760255,\n aqua: 16777215,\n aquamarine: 2147472639,\n azure: 4043309055,\n beige: 4126530815,\n bisque: 4293182719,\n black: 255,\n blanchedalmond: 4293643775,\n blue: 65535,\n blueviolet: 2318131967,\n brown: 2771004159,\n burlywood: 3736635391,\n burntsienna: 3934150143,\n cadetblue: 1604231423,\n chartreuse: 2147418367,\n chocolate: 3530104575,\n coral: 4286533887,\n cornflowerblue: 1687547391,\n cornsilk: 4294499583,\n crimson: 3692313855,\n cyan: 16777215,\n darkblue: 35839,\n darkcyan: 9145343,\n darkgoldenrod: 3095792639,\n darkgray: 2846468607,\n darkgreen: 6553855,\n darkgrey: 2846468607,\n darkkhaki: 3182914559,\n darkmagenta: 2332068863,\n darkolivegreen: 1433087999,\n darkorange: 4287365375,\n darkorchid: 2570243327,\n darkred: 2332033279,\n darksalmon: 3918953215,\n darkseagreen: 2411499519,\n darkslateblue: 1211993087,\n darkslategray: 793726975,\n darkslategrey: 793726975,\n darkturquoise: 13554175,\n darkviolet: 2483082239,\n deeppink: 4279538687,\n deepskyblue: 12582911,\n dimgray: 1768516095,\n dimgrey: 1768516095,\n dodgerblue: 512819199,\n firebrick: 2988581631,\n floralwhite: 4294635775,\n forestgreen: 579543807,\n fuchsia: 4278255615,\n gainsboro: 3705462015,\n ghostwhite: 4177068031,\n gold: 4292280575,\n goldenrod: 3668254975,\n gray: 2155905279,\n green: 8388863,\n greenyellow: 2919182335,\n grey: 2155905279,\n honeydew: 4043305215,\n hotpink: 4285117695,\n indianred: 3445382399,\n indigo: 1258324735,\n ivory: 4294963455,\n khaki: 4041641215,\n lavender: 3873897215,\n lavenderblush: 4293981695,\n lawngreen: 2096890111,\n lemonchiffon: 4294626815,\n lightblue: 2916673279,\n lightcoral: 4034953471,\n lightcyan: 3774873599,\n lightgoldenrodyellow: 4210742015,\n lightgray: 3553874943,\n lightgreen: 2431553791,\n lightgrey: 3553874943,\n lightpink: 4290167295,\n lightsalmon: 4288707327,\n lightseagreen: 548580095,\n lightskyblue: 2278488831,\n lightslategray: 2005441023,\n lightslategrey: 2005441023,\n lightsteelblue: 2965692159,\n lightyellow: 4294959359,\n lime: 16711935,\n limegreen: 852308735,\n linen: 4210091775,\n magenta: 4278255615,\n maroon: 2147483903,\n mediumaquamarine: 1724754687,\n mediumblue: 52735,\n mediumorchid: 3126187007,\n mediumpurple: 2473647103,\n mediumseagreen: 1018393087,\n mediumslateblue: 2070474495,\n mediumspringgreen: 16423679,\n mediumturquoise: 1221709055,\n mediumvioletred: 3340076543,\n midnightblue: 421097727,\n mintcream: 4127193855,\n mistyrose: 4293190143,\n moccasin: 4293178879,\n navajowhite: 4292783615,\n navy: 33023,\n oldlace: 4260751103,\n olive: 2155872511,\n olivedrab: 1804477439,\n orange: 4289003775,\n orangered: 4282712319,\n orchid: 3664828159,\n palegoldenrod: 4008225535,\n palegreen: 2566625535,\n paleturquoise: 2951671551,\n palevioletred: 3681588223,\n papayawhip: 4293907967,\n peachpuff: 4292524543,\n peru: 3448061951,\n pink: 4290825215,\n plum: 3718307327,\n powderblue: 2967529215,\n purple: 2147516671,\n rebeccapurple: 1714657791,\n red: 4278190335,\n rosybrown: 3163525119,\n royalblue: 1097458175,\n saddlebrown: 2336560127,\n salmon: 4202722047,\n sandybrown: 4104413439,\n seagreen: 780883967,\n seashell: 4294307583,\n sienna: 2689740287,\n silver: 3233857791,\n skyblue: 2278484991,\n slateblue: 1784335871,\n slategray: 1887473919,\n slategrey: 1887473919,\n snow: 4294638335,\n springgreen: 16744447,\n steelblue: 1182971135,\n tan: 3535047935,\n teal: 8421631,\n thistle: 3636451583,\n tomato: 4284696575,\n turquoise: 1088475391,\n violet: 4001558271,\n wheat: 4125012991,\n white: 4294967295,\n whitesmoke: 4126537215,\n yellow: 4294902015,\n yellowgreen: 2597139199\n};\n\n// src/colorMatchers.ts\nvar NUMBER = \"[-+]?\\\\d*\\\\.?\\\\d+\";\nvar PERCENTAGE = NUMBER + \"%\";\nfunction call(...parts) {\n return \"\\\\(\\\\s*(\" + parts.join(\")\\\\s*,\\\\s*(\") + \")\\\\s*\\\\)\";\n}\nvar rgb = new RegExp(\"rgb\" + call(NUMBER, NUMBER, NUMBER));\nvar rgba = new RegExp(\"rgba\" + call(NUMBER, NUMBER, NUMBER, NUMBER));\nvar hsl = new RegExp(\"hsl\" + call(NUMBER, PERCENTAGE, PERCENTAGE));\nvar hsla = new RegExp(\n \"hsla\" + call(NUMBER, PERCENTAGE, PERCENTAGE, NUMBER)\n);\nvar hex3 = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/;\nvar hex4 = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/;\nvar hex6 = /^#([0-9a-fA-F]{6})$/;\nvar hex8 = /^#([0-9a-fA-F]{8})$/;\n\n// src/normalizeColor.ts\nfunction normalizeColor(color) {\n let match;\n if (typeof color === \"number\") {\n return color >>> 0 === color && color >= 0 && color <= 4294967295 ? color : null;\n }\n if (match = hex6.exec(color))\n return parseInt(match[1] + \"ff\", 16) >>> 0;\n if (colors && colors[color] !== void 0) {\n return colors[color];\n }\n if (match = rgb.exec(color)) {\n return (parse255(match[1]) << 24 | // r\n parse255(match[2]) << 16 | // g\n parse255(match[3]) << 8 | // b\n 255) >>> // a\n 0;\n }\n if (match = rgba.exec(color)) {\n return (parse255(match[1]) << 24 | // r\n parse255(match[2]) << 16 | // g\n parse255(match[3]) << 8 | // b\n parse1(match[4])) >>> // a\n 0;\n }\n if (match = hex3.exec(color)) {\n return parseInt(\n match[1] + match[1] + // r\n match[2] + match[2] + // g\n match[3] + match[3] + // b\n \"ff\",\n // a\n 16\n ) >>> 0;\n }\n if (match = hex8.exec(color))\n return parseInt(match[1], 16) >>> 0;\n if (match = hex4.exec(color)) {\n return parseInt(\n match[1] + match[1] + // r\n match[2] + match[2] + // g\n match[3] + match[3] + // b\n match[4] + match[4],\n // a\n 16\n ) >>> 0;\n }\n if (match = hsl.exec(color)) {\n return (hslToRgb(\n parse360(match[1]),\n // h\n parsePercentage(match[2]),\n // s\n parsePercentage(match[3])\n // l\n ) | 255) >>> // a\n 0;\n }\n if (match = hsla.exec(color)) {\n return (hslToRgb(\n parse360(match[1]),\n // h\n parsePercentage(match[2]),\n // s\n parsePercentage(match[3])\n // l\n ) | parse1(match[4])) >>> // a\n 0;\n }\n return null;\n}\nfunction hue2rgb(p, q, t) {\n if (t < 0)\n t += 1;\n if (t > 1)\n t -= 1;\n if (t < 1 / 6)\n return p + (q - p) * 6 * t;\n if (t < 1 / 2)\n return q;\n if (t < 2 / 3)\n return p + (q - p) * (2 / 3 - t) * 6;\n return p;\n}\nfunction hslToRgb(h, s, l) {\n const q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n const p = 2 * l - q;\n const r = hue2rgb(p, q, h + 1 / 3);\n const g = hue2rgb(p, q, h);\n const b = hue2rgb(p, q, h - 1 / 3);\n return Math.round(r * 255) << 24 | Math.round(g * 255) << 16 | Math.round(b * 255) << 8;\n}\nfunction parse255(str) {\n const int = parseInt(str, 10);\n if (int < 0)\n return 0;\n if (int > 255)\n return 255;\n return int;\n}\nfunction parse360(str) {\n const int = parseFloat(str);\n return (int % 360 + 360) % 360 / 360;\n}\nfunction parse1(str) {\n const num = parseFloat(str);\n if (num < 0)\n return 0;\n if (num > 1)\n return 255;\n return Math.round(num * 255);\n}\nfunction parsePercentage(str) {\n const int = parseFloat(str);\n if (int < 0)\n return 0;\n if (int > 100)\n return 1;\n return int / 100;\n}\n\n// src/colorToRgba.ts\nfunction colorToRgba(input) {\n let int32Color = normalizeColor(input);\n if (int32Color === null)\n return input;\n int32Color = int32Color || 0;\n const r = (int32Color & 4278190080) >>> 24;\n const g = (int32Color & 16711680) >>> 16;\n const b = (int32Color & 65280) >>> 8;\n const a = (int32Color & 255) / 255;\n return `rgba(${r}, ${g}, ${b}, ${a})`;\n}\n\n// src/createInterpolator.ts\nvar createInterpolator = (range, output, extrapolate) => {\n if (is.fun(range)) {\n return range;\n }\n if (is.arr(range)) {\n return createInterpolator({\n range,\n output,\n extrapolate\n });\n }\n if (is.str(range.output[0])) {\n return createStringInterpolator(range);\n }\n const config = range;\n const outputRange = config.output;\n const inputRange = config.range || [0, 1];\n const extrapolateLeft = config.extrapolateLeft || config.extrapolate || \"extend\";\n const extrapolateRight = config.extrapolateRight || config.extrapolate || \"extend\";\n const easing = config.easing || ((t) => t);\n return (input) => {\n const range2 = findRange(input, inputRange);\n return interpolate(\n input,\n inputRange[range2],\n inputRange[range2 + 1],\n outputRange[range2],\n outputRange[range2 + 1],\n easing,\n extrapolateLeft,\n extrapolateRight,\n config.map\n );\n };\n};\nfunction interpolate(input, inputMin, inputMax, outputMin, outputMax, easing, extrapolateLeft, extrapolateRight, map) {\n let result = map ? map(input) : input;\n if (result < inputMin) {\n if (extrapolateLeft === \"identity\")\n return result;\n else if (extrapolateLeft === \"clamp\")\n result = inputMin;\n }\n if (result > inputMax) {\n if (extrapolateRight === \"identity\")\n return result;\n else if (extrapolateRight === \"clamp\")\n result = inputMax;\n }\n if (outputMin === outputMax)\n return outputMin;\n if (inputMin === inputMax)\n return input <= inputMin ? outputMin : outputMax;\n if (inputMin === -Infinity)\n result = -result;\n else if (inputMax === Infinity)\n result = result - inputMin;\n else\n result = (result - inputMin) / (inputMax - inputMin);\n result = easing(result);\n if (outputMin === -Infinity)\n result = -result;\n else if (outputMax === Infinity)\n result = result + outputMin;\n else\n result = result * (outputMax - outputMin) + outputMin;\n return result;\n}\nfunction findRange(input, inputRange) {\n for (var i = 1; i < inputRange.length - 1; ++i)\n if (inputRange[i] >= input)\n break;\n return i - 1;\n}\n\n// src/easings.ts\nvar steps = (steps2, direction = \"end\") => (progress2) => {\n progress2 = direction === \"end\" ? Math.min(progress2, 0.999) : Math.max(progress2, 1e-3);\n const expanded = progress2 * steps2;\n const rounded = direction === \"end\" ? Math.floor(expanded) : Math.ceil(expanded);\n return clamp(0, 1, rounded / steps2);\n};\nvar c1 = 1.70158;\nvar c2 = c1 * 1.525;\nvar c3 = c1 + 1;\nvar c4 = 2 * Math.PI / 3;\nvar c5 = 2 * Math.PI / 4.5;\nvar bounceOut = (x) => {\n const n1 = 7.5625;\n const d1 = 2.75;\n if (x < 1 / d1) {\n return n1 * x * x;\n } else if (x < 2 / d1) {\n return n1 * (x -= 1.5 / d1) * x + 0.75;\n } else if (x < 2.5 / d1) {\n return n1 * (x -= 2.25 / d1) * x + 0.9375;\n } else {\n return n1 * (x -= 2.625 / d1) * x + 0.984375;\n }\n};\nvar easings = {\n linear: (x) => x,\n easeInQuad: (x) => x * x,\n easeOutQuad: (x) => 1 - (1 - x) * (1 - x),\n easeInOutQuad: (x) => x < 0.5 ? 2 * x * x : 1 - Math.pow(-2 * x + 2, 2) / 2,\n easeInCubic: (x) => x * x * x,\n easeOutCubic: (x) => 1 - Math.pow(1 - x, 3),\n easeInOutCubic: (x) => x < 0.5 ? 4 * x * x * x : 1 - Math.pow(-2 * x + 2, 3) / 2,\n easeInQuart: (x) => x * x * x * x,\n easeOutQuart: (x) => 1 - Math.pow(1 - x, 4),\n easeInOutQuart: (x) => x < 0.5 ? 8 * x * x * x * x : 1 - Math.pow(-2 * x + 2, 4) / 2,\n easeInQuint: (x) => x * x * x * x * x,\n easeOutQuint: (x) => 1 - Math.pow(1 - x, 5),\n easeInOutQuint: (x) => x < 0.5 ? 16 * x * x * x * x * x : 1 - Math.pow(-2 * x + 2, 5) / 2,\n easeInSine: (x) => 1 - Math.cos(x * Math.PI / 2),\n easeOutSine: (x) => Math.sin(x * Math.PI / 2),\n easeInOutSine: (x) => -(Math.cos(Math.PI * x) - 1) / 2,\n easeInExpo: (x) => x === 0 ? 0 : Math.pow(2, 10 * x - 10),\n easeOutExpo: (x) => x === 1 ? 1 : 1 - Math.pow(2, -10 * x),\n easeInOutExpo: (x) => x === 0 ? 0 : x === 1 ? 1 : x < 0.5 ? Math.pow(2, 20 * x - 10) / 2 : (2 - Math.pow(2, -20 * x + 10)) / 2,\n easeInCirc: (x) => 1 - Math.sqrt(1 - Math.pow(x, 2)),\n easeOutCirc: (x) => Math.sqrt(1 - Math.pow(x - 1, 2)),\n easeInOutCirc: (x) => x < 0.5 ? (1 - Math.sqrt(1 - Math.pow(2 * x, 2))) / 2 : (Math.sqrt(1 - Math.pow(-2 * x + 2, 2)) + 1) / 2,\n easeInBack: (x) => c3 * x * x * x - c1 * x * x,\n easeOutBack: (x) => 1 + c3 * Math.pow(x - 1, 3) + c1 * Math.pow(x - 1, 2),\n easeInOutBack: (x) => x < 0.5 ? Math.pow(2 * x, 2) * ((c2 + 1) * 2 * x - c2) / 2 : (Math.pow(2 * x - 2, 2) * ((c2 + 1) * (x * 2 - 2) + c2) + 2) / 2,\n easeInElastic: (x) => x === 0 ? 0 : x === 1 ? 1 : -Math.pow(2, 10 * x - 10) * Math.sin((x * 10 - 10.75) * c4),\n easeOutElastic: (x) => x === 0 ? 0 : x === 1 ? 1 : Math.pow(2, -10 * x) * Math.sin((x * 10 - 0.75) * c4) + 1,\n easeInOutElastic: (x) => x === 0 ? 0 : x === 1 ? 1 : x < 0.5 ? -(Math.pow(2, 20 * x - 10) * Math.sin((20 * x - 11.125) * c5)) / 2 : Math.pow(2, -20 * x + 10) * Math.sin((20 * x - 11.125) * c5) / 2 + 1,\n easeInBounce: (x) => 1 - bounceOut(1 - x),\n easeOutBounce: bounceOut,\n easeInOutBounce: (x) => x < 0.5 ? (1 - bounceOut(1 - 2 * x)) / 2 : (1 + bounceOut(2 * x - 1)) / 2,\n steps\n};\n\n// src/fluids.ts\nvar $get = Symbol.for(\"FluidValue.get\");\nvar $observers = Symbol.for(\"FluidValue.observers\");\nvar hasFluidValue = (arg) => Boolean(arg && arg[$get]);\nvar getFluidValue = (arg) => arg && arg[$get] ? arg[$get]() : arg;\nvar getFluidObservers = (target) => target[$observers] || null;\nfunction callFluidObserver(observer2, event) {\n if (observer2.eventObserved) {\n observer2.eventObserved(event);\n } else {\n observer2(event);\n }\n}\nfunction callFluidObservers(target, event) {\n const observers = target[$observers];\n if (observers) {\n observers.forEach((observer2) => {\n callFluidObserver(observer2, event);\n });\n }\n}\nvar FluidValue = class {\n constructor(get) {\n if (!get && !(get = this.get)) {\n throw Error(\"Unknown getter\");\n }\n setFluidGetter(this, get);\n }\n};\n$get, $observers;\nvar setFluidGetter = (target, get) => setHidden(target, $get, get);\nfunction addFluidObserver(target, observer2) {\n if (target[$get]) {\n let observers = target[$observers];\n if (!observers) {\n setHidden(target, $observers, observers = /* @__PURE__ */ new Set());\n }\n if (!observers.has(observer2)) {\n observers.add(observer2);\n if (target.observerAdded) {\n target.observerAdded(observers.size, observer2);\n }\n }\n }\n return observer2;\n}\nfunction removeFluidObserver(target, observer2) {\n const observers = target[$observers];\n if (observers && observers.has(observer2)) {\n const count = observers.size - 1;\n if (count) {\n observers.delete(observer2);\n } else {\n target[$observers] = null;\n }\n if (target.observerRemoved) {\n target.observerRemoved(count, observer2);\n }\n }\n}\nvar setHidden = (target, key, value) => Object.defineProperty(target, key, {\n value,\n writable: true,\n configurable: true\n});\n\n// src/regexs.ts\nvar numberRegex = /[+\\-]?(?:0|[1-9]\\d*)(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?/g;\nvar colorRegex = /(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\\((-?\\d+%?[,\\s]+){2,3}\\s*[\\d\\.]+%?\\))/gi;\nvar unitRegex = new RegExp(`(${numberRegex.source})(%|[a-z]+)`, \"i\");\nvar rgbaRegex = /rgba\\(([0-9\\.-]+), ([0-9\\.-]+), ([0-9\\.-]+), ([0-9\\.-]+)\\)/gi;\nvar cssVariableRegex = /var\\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\\)/;\n\n// src/variableToRgba.ts\nvar variableToRgba = (input) => {\n const [token, fallback] = parseCSSVariable(input);\n if (!token || isSSR()) {\n return input;\n }\n const value = window.getComputedStyle(document.documentElement).getPropertyValue(token);\n if (value) {\n return value.trim();\n } else if (fallback && fallback.startsWith(\"--\")) {\n const value2 = window.getComputedStyle(document.documentElement).getPropertyValue(fallback);\n if (value2) {\n return value2;\n } else {\n return input;\n }\n } else if (fallback && cssVariableRegex.test(fallback)) {\n return variableToRgba(fallback);\n } else if (fallback) {\n return fallback;\n }\n return input;\n};\nvar parseCSSVariable = (current) => {\n const match = cssVariableRegex.exec(current);\n if (!match)\n return [,];\n const [, token, fallback] = match;\n return [token, fallback];\n};\n\n// src/stringInterpolation.ts\nvar namedColorRegex;\nvar rgbaRound = (_, p1, p2, p3, p4) => `rgba(${Math.round(p1)}, ${Math.round(p2)}, ${Math.round(p3)}, ${p4})`;\nvar createStringInterpolator2 = (config) => {\n if (!namedColorRegex)\n namedColorRegex = colors ? (\n // match color names, ignore partial matches\n new RegExp(`(${Object.keys(colors).join(\"|\")})(?!\\\\w)`, \"g\")\n ) : (\n // never match\n /^\\b$/\n );\n const output = config.output.map((value) => {\n return getFluidValue(value).replace(cssVariableRegex, variableToRgba).replace(colorRegex, colorToRgba).replace(namedColorRegex, colorToRgba);\n });\n const keyframes = output.map((value) => value.match(numberRegex).map(Number));\n const outputRanges = keyframes[0].map(\n (_, i) => keyframes.map((values) => {\n if (!(i in values)) {\n throw Error('The arity of each \"output\" value must be equal');\n }\n return values[i];\n })\n );\n const interpolators = outputRanges.map(\n (output2) => createInterpolator({ ...config, output: output2 })\n );\n return (input) => {\n const missingUnit = !unitRegex.test(output[0]) && output.find((value) => unitRegex.test(value))?.replace(numberRegex, \"\");\n let i = 0;\n return output[0].replace(\n numberRegex,\n () => `${interpolators[i++](input)}${missingUnit || \"\"}`\n ).replace(rgbaRegex, rgbaRound);\n };\n};\n\n// src/deprecations.ts\nvar prefix = \"react-spring: \";\nvar once = (fn) => {\n const func = fn;\n let called = false;\n if (typeof func != \"function\") {\n throw new TypeError(`${prefix}once requires a function parameter`);\n }\n return (...args) => {\n if (!called) {\n func(...args);\n called = true;\n }\n };\n};\nvar warnInterpolate = once(console.warn);\nfunction deprecateInterpolate() {\n warnInterpolate(\n `${prefix}The \"interpolate\" function is deprecated in v9 (use \"to\" instead)`\n );\n}\nvar warnDirectCall = once(console.warn);\nfunction deprecateDirectCall() {\n warnDirectCall(\n `${prefix}Directly calling start instead of using the api object is deprecated in v9 (use \".start\" instead), this will be removed in later 0.X.0 versions`\n );\n}\n\n// src/isAnimatedString.ts\nfunction isAnimatedString(value) {\n return is.str(value) && (value[0] == \"#\" || /\\d/.test(value) || // Do not identify a CSS variable as an AnimatedString if its SSR\n !isSSR() && cssVariableRegex.test(value) || value in (colors || {}));\n}\n\n// src/dom-events/scroll/index.ts\nimport { raf as raf3 } from \"@react-spring/rafz\";\n\n// src/dom-events/resize/resizeElement.ts\nvar observer;\nvar resizeHandlers = /* @__PURE__ */ new WeakMap();\nvar handleObservation = (entries) => entries.forEach(({ target, contentRect }) => {\n return resizeHandlers.get(target)?.forEach((handler) => handler(contentRect));\n});\nfunction resizeElement(handler, target) {\n if (!observer) {\n if (typeof ResizeObserver !== \"undefined\") {\n observer = new ResizeObserver(handleObservation);\n }\n }\n let elementHandlers = resizeHandlers.get(target);\n if (!elementHandlers) {\n elementHandlers = /* @__PURE__ */ new Set();\n resizeHandlers.set(target, elementHandlers);\n }\n elementHandlers.add(handler);\n if (observer) {\n observer.observe(target);\n }\n return () => {\n const elementHandlers2 = resizeHandlers.get(target);\n if (!elementHandlers2)\n return;\n elementHandlers2.delete(handler);\n if (!elementHandlers2.size && observer) {\n observer.unobserve(target);\n }\n };\n}\n\n// src/dom-events/resize/resizeWindow.ts\nvar listeners = /* @__PURE__ */ new Set();\nvar cleanupWindowResizeHandler;\nvar createResizeHandler = () => {\n const handleResize = () => {\n listeners.forEach(\n (callback) => callback({\n width: window.innerWidth,\n height: window.innerHeight\n })\n );\n };\n window.addEventListener(\"resize\", handleResize);\n return () => {\n window.removeEventListener(\"resize\", handleResize);\n };\n};\nvar resizeWindow = (callback) => {\n listeners.add(callback);\n if (!cleanupWindowResizeHandler) {\n cleanupWindowResizeHandler = createResizeHandler();\n }\n return () => {\n listeners.delete(callback);\n if (!listeners.size && cleanupWindowResizeHandler) {\n cleanupWindowResizeHandler();\n cleanupWindowResizeHandler = void 0;\n }\n };\n};\n\n// src/dom-events/resize/index.ts\nvar onResize = (callback, { container = document.documentElement } = {}) => {\n if (container === document.documentElement) {\n return resizeWindow(callback);\n } else {\n return resizeElement(callback, container);\n }\n};\n\n// src/progress.ts\nvar progress = (min, max, value) => max - min === 0 ? 1 : (value - min) / (max - min);\n\n// src/dom-events/scroll/ScrollHandler.ts\nvar SCROLL_KEYS = {\n x: {\n length: \"Width\",\n position: \"Left\"\n },\n y: {\n length: \"Height\",\n position: \"Top\"\n }\n};\nvar ScrollHandler = class {\n constructor(callback, container) {\n this.createAxis = () => ({\n current: 0,\n progress: 0,\n scrollLength: 0\n });\n this.updateAxis = (axisName) => {\n const axis = this.info[axisName];\n const { length, position } = SCROLL_KEYS[axisName];\n axis.current = this.container[`scroll${position}`];\n axis.scrollLength = this.container[`scroll${length}`] - this.container[`client${length}`];\n axis.progress = progress(0, axis.scrollLength, axis.current);\n };\n this.update = () => {\n this.updateAxis(\"x\");\n this.updateAxis(\"y\");\n };\n this.sendEvent = () => {\n this.callback(this.info);\n };\n this.advance = () => {\n this.update();\n this.sendEvent();\n };\n this.callback = callback;\n this.container = container;\n this.info = {\n time: 0,\n x: this.createAxis(),\n y: this.createAxis()\n };\n }\n};\n\n// src/dom-events/scroll/index.ts\nvar scrollListeners = /* @__PURE__ */ new WeakMap();\nvar resizeListeners = /* @__PURE__ */ new WeakMap();\nvar onScrollHandlers = /* @__PURE__ */ new WeakMap();\nvar getTarget = (container) => container === document.documentElement ? window : container;\nvar onScroll = (callback, { container = document.documentElement } = {}) => {\n let containerHandlers = onScrollHandlers.get(container);\n if (!containerHandlers) {\n containerHandlers = /* @__PURE__ */ new Set();\n onScrollHandlers.set(container, containerHandlers);\n }\n const containerHandler = new ScrollHandler(callback, container);\n containerHandlers.add(containerHandler);\n if (!scrollListeners.has(container)) {\n const listener = () => {\n containerHandlers?.forEach((handler) => handler.advance());\n return true;\n };\n scrollListeners.set(container, listener);\n const target = getTarget(container);\n window.addEventListener(\"resize\", listener, { passive: true });\n if (container !== document.documentElement) {\n resizeListeners.set(container, onResize(listener, { container }));\n }\n target.addEventListener(\"scroll\", listener, { passive: true });\n }\n const animateScroll = scrollListeners.get(container);\n raf3(animateScroll);\n return () => {\n raf3.cancel(animateScroll);\n const containerHandlers2 = onScrollHandlers.get(container);\n if (!containerHandlers2)\n return;\n containerHandlers2.delete(containerHandler);\n if (containerHandlers2.size)\n return;\n const listener = scrollListeners.get(container);\n scrollListeners.delete(container);\n if (listener) {\n getTarget(container).removeEventListener(\"scroll\", listener);\n window.removeEventListener(\"resize\", listener);\n resizeListeners.get(container)?.();\n }\n };\n};\n\n// src/hooks/useConstant.ts\nimport { useRef } from \"react\";\nfunction useConstant(init) {\n const ref = useRef(null);\n if (ref.current === null) {\n ref.current = init();\n }\n return ref.current;\n}\n\n// src/hooks/useForceUpdate.ts\nimport { useState } from \"react\";\n\n// src/hooks/useIsMounted.ts\nimport { useRef as useRef2 } from \"react\";\n\n// src/hooks/useIsomorphicLayoutEffect.ts\nimport { useEffect, useLayoutEffect } from \"react\";\nvar useIsomorphicLayoutEffect = isSSR() ? useEffect : useLayoutEffect;\n\n// src/hooks/useIsMounted.ts\nvar useIsMounted = () => {\n const isMounted = useRef2(false);\n useIsomorphicLayoutEffect(() => {\n isMounted.current = true;\n return () => {\n isMounted.current = false;\n };\n }, []);\n return isMounted;\n};\n\n// src/hooks/useForceUpdate.ts\nfunction useForceUpdate() {\n const update = useState()[1];\n const isMounted = useIsMounted();\n return () => {\n if (isMounted.current) {\n update(Math.random());\n }\n };\n}\n\n// src/hooks/useMemoOne.ts\nimport { useEffect as useEffect2, useRef as useRef3, useState as useState2 } from \"react\";\nfunction useMemoOne(getResult, inputs) {\n const [initial] = useState2(\n () => ({\n inputs,\n result: getResult()\n })\n );\n const committed = useRef3();\n const prevCache = committed.current;\n let cache = prevCache;\n if (cache) {\n const useCache = Boolean(\n inputs && cache.inputs && areInputsEqual(inputs, cache.inputs)\n );\n if (!useCache) {\n cache = {\n inputs,\n result: getResult()\n };\n }\n } else {\n cache = initial;\n }\n useEffect2(() => {\n committed.current = cache;\n if (prevCache == initial) {\n initial.inputs = initial.result = void 0;\n }\n }, [cache]);\n return cache.result;\n}\nfunction areInputsEqual(next, prev) {\n if (next.length !== prev.length) {\n return false;\n }\n for (let i = 0; i < next.length; i++) {\n if (next[i] !== prev[i]) {\n return false;\n }\n }\n return true;\n}\n\n// src/hooks/useOnce.ts\nimport { useEffect as useEffect3 } from \"react\";\nvar useOnce = (effect) => useEffect3(effect, emptyDeps);\nvar emptyDeps = [];\n\n// src/hooks/usePrev.ts\nimport { useEffect as useEffect4, useRef as useRef4 } from \"react\";\nfunction usePrev(value) {\n const prevRef = useRef4();\n useEffect4(() => {\n prevRef.current = value;\n });\n return prevRef.current;\n}\n\n// src/hooks/useReducedMotion.ts\nimport { useState as useState3 } from \"react\";\nvar useReducedMotion = () => {\n const [reducedMotion, setReducedMotion] = useState3(null);\n useIsomorphicLayoutEffect(() => {\n const mql = window.matchMedia(\"(prefers-reduced-motion)\");\n const handleMediaChange = (e) => {\n setReducedMotion(e.matches);\n assign({\n skipAnimation: e.matches\n });\n };\n handleMediaChange(mql);\n if (mql.addEventListener) {\n mql.addEventListener(\"change\", handleMediaChange);\n } else {\n mql.addListener(handleMediaChange);\n }\n return () => {\n if (mql.removeEventListener) {\n mql.removeEventListener(\"change\", handleMediaChange);\n } else {\n mql.removeListener(handleMediaChange);\n }\n };\n }, []);\n return reducedMotion;\n};\n\n// src/index.ts\nimport { raf as raf4 } from \"@react-spring/rafz\";\nexport {\n FluidValue,\n globals_exports as Globals,\n addFluidObserver,\n callFluidObserver,\n callFluidObservers,\n clamp,\n colorToRgba,\n colors2 as colors,\n createInterpolator,\n createStringInterpolator2 as createStringInterpolator,\n defineHidden,\n deprecateDirectCall,\n deprecateInterpolate,\n each,\n eachProp,\n easings,\n flush,\n flushCalls,\n frameLoop,\n getFluidObservers,\n getFluidValue,\n hasFluidValue,\n hex3,\n hex4,\n hex6,\n hex8,\n hsl,\n hsla,\n is,\n isAnimatedString,\n isEqual,\n isSSR,\n noop,\n onResize,\n onScroll,\n once,\n prefix,\n raf4 as raf,\n removeFluidObserver,\n rgb,\n rgba,\n setFluidGetter,\n toArray,\n useConstant,\n useForceUpdate,\n useIsomorphicLayoutEffect,\n useMemoOne,\n useOnce,\n usePrev,\n useReducedMotion\n};\n//# sourceMappingURL=react-spring_shared.modern.mjs.map","// src/Animated.ts\nimport { defineHidden } from \"@react-spring/shared\";\nvar $node = Symbol.for(\"Animated:node\");\nvar isAnimated = (value) => !!value && value[$node] === value;\nvar getAnimated = (owner) => owner && owner[$node];\nvar setAnimated = (owner, node) => defineHidden(owner, $node, node);\nvar getPayload = (owner) => owner && owner[$node] && owner[$node].getPayload();\nvar Animated = class {\n constructor() {\n setAnimated(this, this);\n }\n /** Get every `AnimatedValue` used by this node. */\n getPayload() {\n return this.payload || [];\n }\n};\n\n// src/AnimatedValue.ts\nimport { is } from \"@react-spring/shared\";\nvar AnimatedValue = class extends Animated {\n constructor(_value) {\n super();\n this._value = _value;\n this.done = true;\n this.durationProgress = 0;\n if (is.num(this._value)) {\n this.lastPosition = this._value;\n }\n }\n /** @internal */\n static create(value) {\n return new AnimatedValue(value);\n }\n getPayload() {\n return [this];\n }\n getValue() {\n return this._value;\n }\n setValue(value, step) {\n if (is.num(value)) {\n this.lastPosition = value;\n if (step) {\n value = Math.round(value / step) * step;\n if (this.done) {\n this.lastPosition = value;\n }\n }\n }\n if (this._value === value) {\n return false;\n }\n this._value = value;\n return true;\n }\n reset() {\n const { done } = this;\n this.done = false;\n if (is.num(this._value)) {\n this.elapsedTime = 0;\n this.durationProgress = 0;\n this.lastPosition = this._value;\n if (done)\n this.lastVelocity = null;\n this.v0 = null;\n }\n }\n};\n\n// src/AnimatedString.ts\nimport { is as is2, createInterpolator } from \"@react-spring/shared\";\nvar AnimatedString = class extends AnimatedValue {\n constructor(value) {\n super(0);\n this._string = null;\n this._toString = createInterpolator({\n output: [value, value]\n });\n }\n /** @internal */\n static create(value) {\n return new AnimatedString(value);\n }\n getValue() {\n const value = this._string;\n return value == null ? this._string = this._toString(this._value) : value;\n }\n setValue(value) {\n if (is2.str(value)) {\n if (value == this._string) {\n return false;\n }\n this._string = value;\n this._value = 1;\n } else if (super.setValue(value)) {\n this._string = null;\n } else {\n return false;\n }\n return true;\n }\n reset(goal) {\n if (goal) {\n this._toString = createInterpolator({\n output: [this.getValue(), goal]\n });\n }\n this._value = 0;\n super.reset();\n }\n};\n\n// src/AnimatedArray.ts\nimport { isAnimatedString } from \"@react-spring/shared\";\n\n// src/AnimatedObject.ts\nimport {\n each,\n eachProp,\n getFluidValue,\n hasFluidValue\n} from \"@react-spring/shared\";\n\n// src/context.ts\nvar TreeContext = { dependencies: null };\n\n// src/AnimatedObject.ts\nvar AnimatedObject = class extends Animated {\n constructor(source) {\n super();\n this.source = source;\n this.setValue(source);\n }\n getValue(animated) {\n const values = {};\n eachProp(this.source, (source, key) => {\n if (isAnimated(source)) {\n values[key] = source.getValue(animated);\n } else if (hasFluidValue(source)) {\n values[key] = getFluidValue(source);\n } else if (!animated) {\n values[key] = source;\n }\n });\n return values;\n }\n /** Replace the raw object data */\n setValue(source) {\n this.source = source;\n this.payload = this._makePayload(source);\n }\n reset() {\n if (this.payload) {\n each(this.payload, (node) => node.reset());\n }\n }\n /** Create a payload set. */\n _makePayload(source) {\n if (source) {\n const payload = /* @__PURE__ */ new Set();\n eachProp(source, this._addToPayload, payload);\n return Array.from(payload);\n }\n }\n /** Add to a payload set. */\n _addToPayload(source) {\n if (TreeContext.dependencies && hasFluidValue(source)) {\n TreeContext.dependencies.add(source);\n }\n const payload = getPayload(source);\n if (payload) {\n each(payload, (node) => this.add(node));\n }\n }\n};\n\n// src/AnimatedArray.ts\nvar AnimatedArray = class extends AnimatedObject {\n constructor(source) {\n super(source);\n }\n /** @internal */\n static create(source) {\n return new AnimatedArray(source);\n }\n getValue() {\n return this.source.map((node) => node.getValue());\n }\n setValue(source) {\n const payload = this.getPayload();\n if (source.length == payload.length) {\n return payload.map((node, i) => node.setValue(source[i])).some(Boolean);\n }\n super.setValue(source.map(makeAnimated));\n return true;\n }\n};\nfunction makeAnimated(value) {\n const nodeType = isAnimatedString(value) ? AnimatedString : AnimatedValue;\n return nodeType.create(value);\n}\n\n// src/getAnimatedType.ts\nimport { is as is3, isAnimatedString as isAnimatedString2 } from \"@react-spring/shared\";\nfunction getAnimatedType(value) {\n const parentNode = getAnimated(value);\n return parentNode ? parentNode.constructor : is3.arr(value) ? AnimatedArray : isAnimatedString2(value) ? AnimatedString : AnimatedValue;\n}\n\n// src/createHost.ts\nimport { is as is5, eachProp as eachProp2 } from \"@react-spring/shared\";\n\n// src/withAnimated.tsx\nimport * as React from \"react\";\nimport { forwardRef, useRef, useCallback, useEffect } from \"react\";\nimport {\n is as is4,\n each as each2,\n raf,\n useForceUpdate,\n useOnce,\n addFluidObserver,\n removeFluidObserver,\n useIsomorphicLayoutEffect\n} from \"@react-spring/shared\";\nvar withAnimated = (Component, host) => {\n const hasInstance = (\n // Function components must use \"forwardRef\" to avoid being\n // re-rendered on every animation frame.\n !is4.fun(Component) || Component.prototype && Component.prototype.isReactComponent\n );\n return forwardRef((givenProps, givenRef) => {\n const instanceRef = useRef(null);\n const ref = hasInstance && // eslint-disable-next-line react-hooks/rules-of-hooks\n useCallback(\n (value) => {\n instanceRef.current = updateRef(givenRef, value);\n },\n [givenRef]\n );\n const [props, deps] = getAnimatedState(givenProps, host);\n const forceUpdate = useForceUpdate();\n const callback = () => {\n const instance = instanceRef.current;\n if (hasInstance && !instance) {\n return;\n }\n const didUpdate = instance ? host.applyAnimatedValues(instance, props.getValue(true)) : false;\n if (didUpdate === false) {\n forceUpdate();\n }\n };\n const observer = new PropsObserver(callback, deps);\n const observerRef = useRef();\n useIsomorphicLayoutEffect(() => {\n observerRef.current = observer;\n each2(deps, (dep) => addFluidObserver(dep, observer));\n return () => {\n if (observerRef.current) {\n each2(\n observerRef.current.deps,\n (dep) => removeFluidObserver(dep, observerRef.current)\n );\n raf.cancel(observerRef.current.update);\n }\n };\n });\n useEffect(callback, []);\n useOnce(() => () => {\n const observer2 = observerRef.current;\n each2(observer2.deps, (dep) => removeFluidObserver(dep, observer2));\n });\n const usedProps = host.getComponentProps(props.getValue());\n return /* @__PURE__ */ React.createElement(Component, { ...usedProps, ref });\n });\n};\nvar PropsObserver = class {\n constructor(update, deps) {\n this.update = update;\n this.deps = deps;\n }\n eventObserved(event) {\n if (event.type == \"change\") {\n raf.write(this.update);\n }\n }\n};\nfunction getAnimatedState(props, host) {\n const dependencies = /* @__PURE__ */ new Set();\n TreeContext.dependencies = dependencies;\n if (props.style)\n props = {\n ...props,\n style: host.createAnimatedStyle(props.style)\n };\n props = new AnimatedObject(props);\n TreeContext.dependencies = null;\n return [props, dependencies];\n}\nfunction updateRef(ref, value) {\n if (ref) {\n if (is4.fun(ref))\n ref(value);\n else\n ref.current = value;\n }\n return value;\n}\n\n// src/createHost.ts\nvar cacheKey = Symbol.for(\"AnimatedComponent\");\nvar createHost = (components, {\n applyAnimatedValues = () => false,\n createAnimatedStyle = (style) => new AnimatedObject(style),\n getComponentProps = (props) => props\n} = {}) => {\n const hostConfig = {\n applyAnimatedValues,\n createAnimatedStyle,\n getComponentProps\n };\n const animated = (Component) => {\n const displayName = getDisplayName(Component) || \"Anonymous\";\n if (is5.str(Component)) {\n Component = animated[Component] || (animated[Component] = withAnimated(Component, hostConfig));\n } else {\n Component = Component[cacheKey] || (Component[cacheKey] = withAnimated(Component, hostConfig));\n }\n Component.displayName = `Animated(${displayName})`;\n return Component;\n };\n eachProp2(components, (Component, key) => {\n if (is5.arr(components)) {\n key = getDisplayName(Component);\n }\n animated[key] = animated(Component);\n });\n return {\n animated\n };\n};\nvar getDisplayName = (arg) => is5.str(arg) ? arg : arg && is5.str(arg.displayName) ? arg.displayName : is5.fun(arg) && arg.name || null;\nexport {\n Animated,\n AnimatedArray,\n AnimatedObject,\n AnimatedString,\n AnimatedValue,\n createHost,\n getAnimated,\n getAnimatedType,\n getPayload,\n isAnimated,\n setAnimated\n};\n//# sourceMappingURL=react-spring_animated.modern.mjs.map","// src/hooks/useChain.ts\nimport { each, useIsomorphicLayoutEffect } from \"@react-spring/shared\";\n\n// src/helpers.ts\nimport {\n is,\n toArray,\n eachProp,\n getFluidValue,\n isAnimatedString,\n Globals as G\n} from \"@react-spring/shared\";\nfunction callProp(value, ...args) {\n return is.fun(value) ? value(...args) : value;\n}\nvar matchProp = (value, key) => value === true || !!(key && value && (is.fun(value) ? value(key) : toArray(value).includes(key)));\nvar resolveProp = (prop, key) => is.obj(prop) ? key && prop[key] : prop;\nvar getDefaultProp = (props, key) => props.default === true ? props[key] : props.default ? props.default[key] : void 0;\nvar noopTransform = (value) => value;\nvar getDefaultProps = (props, transform = noopTransform) => {\n let keys = DEFAULT_PROPS;\n if (props.default && props.default !== true) {\n props = props.default;\n keys = Object.keys(props);\n }\n const defaults2 = {};\n for (const key of keys) {\n const value = transform(props[key], key);\n if (!is.und(value)) {\n defaults2[key] = value;\n }\n }\n return defaults2;\n};\nvar DEFAULT_PROPS = [\n \"config\",\n \"onProps\",\n \"onStart\",\n \"onChange\",\n \"onPause\",\n \"onResume\",\n \"onRest\"\n];\nvar RESERVED_PROPS = {\n config: 1,\n from: 1,\n to: 1,\n ref: 1,\n loop: 1,\n reset: 1,\n pause: 1,\n cancel: 1,\n reverse: 1,\n immediate: 1,\n default: 1,\n delay: 1,\n onProps: 1,\n onStart: 1,\n onChange: 1,\n onPause: 1,\n onResume: 1,\n onRest: 1,\n onResolve: 1,\n // Transition props\n items: 1,\n trail: 1,\n sort: 1,\n expires: 1,\n initial: 1,\n enter: 1,\n update: 1,\n leave: 1,\n children: 1,\n onDestroyed: 1,\n // Internal props\n keys: 1,\n callId: 1,\n parentId: 1\n};\nfunction getForwardProps(props) {\n const forward = {};\n let count = 0;\n eachProp(props, (value, prop) => {\n if (!RESERVED_PROPS[prop]) {\n forward[prop] = value;\n count++;\n }\n });\n if (count) {\n return forward;\n }\n}\nfunction inferTo(props) {\n const to2 = getForwardProps(props);\n if (to2) {\n const out = { to: to2 };\n eachProp(props, (val, key) => key in to2 || (out[key] = val));\n return out;\n }\n return { ...props };\n}\nfunction computeGoal(value) {\n value = getFluidValue(value);\n return is.arr(value) ? value.map(computeGoal) : isAnimatedString(value) ? G.createStringInterpolator({\n range: [0, 1],\n output: [value, value]\n })(1) : value;\n}\nfunction hasProps(props) {\n for (const _ in props)\n return true;\n return false;\n}\nfunction isAsyncTo(to2) {\n return is.fun(to2) || is.arr(to2) && is.obj(to2[0]);\n}\nfunction detachRefs(ctrl, ref) {\n ctrl.ref?.delete(ctrl);\n ref?.delete(ctrl);\n}\nfunction replaceRef(ctrl, ref) {\n if (ref && ctrl.ref !== ref) {\n ctrl.ref?.delete(ctrl);\n ref.add(ctrl);\n ctrl.ref = ref;\n }\n}\n\n// src/hooks/useChain.ts\nfunction useChain(refs, timeSteps, timeFrame = 1e3) {\n useIsomorphicLayoutEffect(() => {\n if (timeSteps) {\n let prevDelay = 0;\n each(refs, (ref, i) => {\n const controllers = ref.current;\n if (controllers.length) {\n let delay = timeFrame * timeSteps[i];\n if (isNaN(delay))\n delay = prevDelay;\n else\n prevDelay = delay;\n each(controllers, (ctrl) => {\n each(ctrl.queue, (props) => {\n const memoizedDelayProp = props.delay;\n props.delay = (key) => delay + callProp(memoizedDelayProp || 0, key);\n });\n });\n ref.start();\n }\n });\n } else {\n let p = Promise.resolve();\n each(refs, (ref) => {\n const controllers = ref.current;\n if (controllers.length) {\n const queues = controllers.map((ctrl) => {\n const q = ctrl.queue;\n ctrl.queue = [];\n return q;\n });\n p = p.then(() => {\n each(\n controllers,\n (ctrl, i) => each(queues[i] || [], (update2) => ctrl.queue.push(update2))\n );\n return Promise.all(ref.start());\n });\n }\n });\n }\n });\n}\n\n// src/hooks/useSpring.ts\nimport { is as is9 } from \"@react-spring/shared\";\n\n// src/hooks/useSprings.ts\nimport { useContext as useContext2, useMemo, useRef } from \"react\";\nimport {\n is as is8,\n each as each5,\n usePrev,\n useOnce,\n useForceUpdate,\n useIsomorphicLayoutEffect as useIsomorphicLayoutEffect2\n} from \"@react-spring/shared\";\n\n// src/SpringValue.ts\nimport {\n is as is5,\n raf as raf3,\n each as each2,\n isEqual,\n toArray as toArray2,\n eachProp as eachProp3,\n frameLoop as frameLoop2,\n flushCalls,\n getFluidValue as getFluidValue2,\n isAnimatedString as isAnimatedString2,\n Globals as G5,\n callFluidObservers as callFluidObservers2,\n hasFluidValue,\n addFluidObserver,\n removeFluidObserver,\n getFluidObservers\n} from \"@react-spring/shared\";\nimport {\n AnimatedValue,\n AnimatedString,\n getPayload,\n getAnimated as getAnimated2,\n setAnimated,\n getAnimatedType\n} from \"@react-spring/animated\";\n\n// src/AnimationConfig.ts\nimport { is as is2, easings } from \"@react-spring/shared\";\n\n// src/constants.ts\nvar config = {\n default: { tension: 170, friction: 26 },\n gentle: { tension: 120, friction: 14 },\n wobbly: { tension: 180, friction: 12 },\n stiff: { tension: 210, friction: 20 },\n slow: { tension: 280, friction: 60 },\n molasses: { tension: 280, friction: 120 }\n};\n\n// src/AnimationConfig.ts\nvar defaults = {\n ...config.default,\n mass: 1,\n damping: 1,\n easing: easings.linear,\n clamp: false\n};\nvar AnimationConfig = class {\n constructor() {\n /**\n * The initial velocity of one or more values.\n *\n * @default 0\n */\n this.velocity = 0;\n Object.assign(this, defaults);\n }\n};\nfunction mergeConfig(config2, newConfig, defaultConfig) {\n if (defaultConfig) {\n defaultConfig = { ...defaultConfig };\n sanitizeConfig(defaultConfig, newConfig);\n newConfig = { ...defaultConfig, ...newConfig };\n }\n sanitizeConfig(config2, newConfig);\n Object.assign(config2, newConfig);\n for (const key in defaults) {\n if (config2[key] == null) {\n config2[key] = defaults[key];\n }\n }\n let { frequency, damping } = config2;\n const { mass } = config2;\n if (!is2.und(frequency)) {\n if (frequency < 0.01)\n frequency = 0.01;\n if (damping < 0)\n damping = 0;\n config2.tension = Math.pow(2 * Math.PI / frequency, 2) * mass;\n config2.friction = 4 * Math.PI * damping * mass / frequency;\n }\n return config2;\n}\nfunction sanitizeConfig(config2, props) {\n if (!is2.und(props.decay)) {\n config2.duration = void 0;\n } else {\n const isTensionConfig = !is2.und(props.tension) || !is2.und(props.friction);\n if (isTensionConfig || !is2.und(props.frequency) || !is2.und(props.damping) || !is2.und(props.mass)) {\n config2.duration = void 0;\n config2.decay = void 0;\n }\n if (isTensionConfig) {\n config2.frequency = void 0;\n }\n }\n}\n\n// src/Animation.ts\nvar emptyArray = [];\nvar Animation = class {\n constructor() {\n this.changed = false;\n this.values = emptyArray;\n this.toValues = null;\n this.fromValues = emptyArray;\n this.config = new AnimationConfig();\n this.immediate = false;\n }\n};\n\n// src/scheduleProps.ts\nimport { is as is3, raf, Globals as G2 } from \"@react-spring/shared\";\nfunction scheduleProps(callId, { key, props, defaultProps, state, actions }) {\n return new Promise((resolve, reject) => {\n let delay;\n let timeout;\n let cancel = matchProp(props.cancel ?? defaultProps?.cancel, key);\n if (cancel) {\n onStart();\n } else {\n if (!is3.und(props.pause)) {\n state.paused = matchProp(props.pause, key);\n }\n let pause = defaultProps?.pause;\n if (pause !== true) {\n pause = state.paused || matchProp(pause, key);\n }\n delay = callProp(props.delay || 0, key);\n if (pause) {\n state.resumeQueue.add(onResume);\n actions.pause();\n } else {\n actions.resume();\n onResume();\n }\n }\n function onPause() {\n state.resumeQueue.add(onResume);\n state.timeouts.delete(timeout);\n timeout.cancel();\n delay = timeout.time - raf.now();\n }\n function onResume() {\n if (delay > 0 && !G2.skipAnimation) {\n state.delayed = true;\n timeout = raf.setTimeout(onStart, delay);\n state.pauseQueue.add(onPause);\n state.timeouts.add(timeout);\n } else {\n onStart();\n }\n }\n function onStart() {\n if (state.delayed) {\n state.delayed = false;\n }\n state.pauseQueue.delete(onPause);\n state.timeouts.delete(timeout);\n if (callId <= (state.cancelId || 0)) {\n cancel = true;\n }\n try {\n actions.start({ ...props, callId, cancel }, resolve);\n } catch (err) {\n reject(err);\n }\n }\n });\n}\n\n// src/runAsync.ts\nimport {\n is as is4,\n raf as raf2,\n flush,\n eachProp as eachProp2,\n Globals as G3\n} from \"@react-spring/shared\";\n\n// src/AnimationResult.ts\nvar getCombinedResult = (target, results) => results.length == 1 ? results[0] : results.some((result) => result.cancelled) ? getCancelledResult(target.get()) : results.every((result) => result.noop) ? getNoopResult(target.get()) : getFinishedResult(\n target.get(),\n results.every((result) => result.finished)\n);\nvar getNoopResult = (value) => ({\n value,\n noop: true,\n finished: true,\n cancelled: false\n});\nvar getFinishedResult = (value, finished, cancelled = false) => ({\n value,\n finished,\n cancelled\n});\nvar getCancelledResult = (value) => ({\n value,\n cancelled: true,\n finished: false\n});\n\n// src/runAsync.ts\nfunction runAsync(to2, props, state, target) {\n const { callId, parentId, onRest } = props;\n const { asyncTo: prevTo, promise: prevPromise } = state;\n if (!parentId && to2 === prevTo && !props.reset) {\n return prevPromise;\n }\n return state.promise = (async () => {\n state.asyncId = callId;\n state.asyncTo = to2;\n const defaultProps = getDefaultProps(\n props,\n (value, key) => (\n // The `onRest` prop is only called when the `runAsync` promise is resolved.\n key === \"onRest\" ? void 0 : value\n )\n );\n let preventBail;\n let bail;\n const bailPromise = new Promise(\n (resolve, reject) => (preventBail = resolve, bail = reject)\n );\n const bailIfEnded = (bailSignal) => {\n const bailResult = (\n // The `cancel` prop or `stop` method was used.\n callId <= (state.cancelId || 0) && getCancelledResult(target) || // The async `to` prop was replaced.\n callId !== state.asyncId && getFinishedResult(target, false)\n );\n if (bailResult) {\n bailSignal.result = bailResult;\n bail(bailSignal);\n throw bailSignal;\n }\n };\n const animate = (arg1, arg2) => {\n const bailSignal = new BailSignal();\n const skipAnimationSignal = new SkipAnimationSignal();\n return (async () => {\n if (G3.skipAnimation) {\n stopAsync(state);\n skipAnimationSignal.result = getFinishedResult(target, false);\n bail(skipAnimationSignal);\n throw skipAnimationSignal;\n }\n bailIfEnded(bailSignal);\n const props2 = is4.obj(arg1) ? { ...arg1 } : { ...arg2, to: arg1 };\n props2.parentId = callId;\n eachProp2(defaultProps, (value, key) => {\n if (is4.und(props2[key])) {\n props2[key] = value;\n }\n });\n const result2 = await target.start(props2);\n bailIfEnded(bailSignal);\n if (state.paused) {\n await new Promise((resume) => {\n state.resumeQueue.add(resume);\n });\n }\n return result2;\n })();\n };\n let result;\n if (G3.skipAnimation) {\n stopAsync(state);\n return getFinishedResult(target, false);\n }\n try {\n let animating;\n if (is4.arr(to2)) {\n animating = (async (queue) => {\n for (const props2 of queue) {\n await animate(props2);\n }\n })(to2);\n } else {\n animating = Promise.resolve(to2(animate, target.stop.bind(target)));\n }\n await Promise.all([animating.then(preventBail), bailPromise]);\n result = getFinishedResult(target.get(), true, false);\n } catch (err) {\n if (err instanceof BailSignal) {\n result = err.result;\n } else if (err instanceof SkipAnimationSignal) {\n result = err.result;\n } else {\n throw err;\n }\n } finally {\n if (callId == state.asyncId) {\n state.asyncId = parentId;\n state.asyncTo = parentId ? prevTo : void 0;\n state.promise = parentId ? prevPromise : void 0;\n }\n }\n if (is4.fun(onRest)) {\n raf2.batchedUpdates(() => {\n onRest(result, target, target.item);\n });\n }\n return result;\n })();\n}\nfunction stopAsync(state, cancelId) {\n flush(state.timeouts, (t) => t.cancel());\n state.pauseQueue.clear();\n state.resumeQueue.clear();\n state.asyncId = state.asyncTo = state.promise = void 0;\n if (cancelId)\n state.cancelId = cancelId;\n}\nvar BailSignal = class extends Error {\n constructor() {\n super(\n \"An async animation has been interrupted. You see this error because you forgot to use `await` or `.catch(...)` on its returned promise.\"\n );\n }\n};\nvar SkipAnimationSignal = class extends Error {\n constructor() {\n super(\"SkipAnimationSignal\");\n }\n};\n\n// src/FrameValue.ts\nimport {\n deprecateInterpolate,\n frameLoop,\n FluidValue as FluidValue2,\n Globals as G4,\n callFluidObservers\n} from \"@react-spring/shared\";\nimport { getAnimated } from \"@react-spring/animated\";\nvar isFrameValue = (value) => value instanceof FrameValue;\nvar nextId = 1;\nvar FrameValue = class extends FluidValue2 {\n constructor() {\n super(...arguments);\n this.id = nextId++;\n this._priority = 0;\n }\n get priority() {\n return this._priority;\n }\n set priority(priority) {\n if (this._priority != priority) {\n this._priority = priority;\n this._onPriorityChange(priority);\n }\n }\n /** Get the current value */\n get() {\n const node = getAnimated(this);\n return node && node.getValue();\n }\n /** Create a spring that maps our value to another value */\n to(...args) {\n return G4.to(this, args);\n }\n /** @deprecated Use the `to` method instead. */\n interpolate(...args) {\n deprecateInterpolate();\n return G4.to(this, args);\n }\n toJSON() {\n return this.get();\n }\n observerAdded(count) {\n if (count == 1)\n this._attach();\n }\n observerRemoved(count) {\n if (count == 0)\n this._detach();\n }\n /** Called when the first child is added. */\n _attach() {\n }\n /** Called when the last child is removed. */\n _detach() {\n }\n /** Tell our children about our new value */\n _onChange(value, idle = false) {\n callFluidObservers(this, {\n type: \"change\",\n parent: this,\n value,\n idle\n });\n }\n /** Tell our children about our new priority */\n _onPriorityChange(priority) {\n if (!this.idle) {\n frameLoop.sort(this);\n }\n callFluidObservers(this, {\n type: \"priority\",\n parent: this,\n priority\n });\n }\n};\n\n// src/SpringPhase.ts\nvar $P = Symbol.for(\"SpringPhase\");\nvar HAS_ANIMATED = 1;\nvar IS_ANIMATING = 2;\nvar IS_PAUSED = 4;\nvar hasAnimated = (target) => (target[$P] & HAS_ANIMATED) > 0;\nvar isAnimating = (target) => (target[$P] & IS_ANIMATING) > 0;\nvar isPaused = (target) => (target[$P] & IS_PAUSED) > 0;\nvar setActiveBit = (target, active) => active ? target[$P] |= IS_ANIMATING | HAS_ANIMATED : target[$P] &= ~IS_ANIMATING;\nvar setPausedBit = (target, paused) => paused ? target[$P] |= IS_PAUSED : target[$P] &= ~IS_PAUSED;\n\n// src/SpringValue.ts\nvar SpringValue = class extends FrameValue {\n constructor(arg1, arg2) {\n super();\n /** The animation state */\n this.animation = new Animation();\n /** Some props have customizable default values */\n this.defaultProps = {};\n /** The state for `runAsync` calls */\n this._state = {\n paused: false,\n delayed: false,\n pauseQueue: /* @__PURE__ */ new Set(),\n resumeQueue: /* @__PURE__ */ new Set(),\n timeouts: /* @__PURE__ */ new Set()\n };\n /** The promise resolvers of pending `start` calls */\n this._pendingCalls = /* @__PURE__ */ new Set();\n /** The counter for tracking `scheduleProps` calls */\n this._lastCallId = 0;\n /** The last `scheduleProps` call that changed the `to` prop */\n this._lastToId = 0;\n this._memoizedDuration = 0;\n if (!is5.und(arg1) || !is5.und(arg2)) {\n const props = is5.obj(arg1) ? { ...arg1 } : { ...arg2, from: arg1 };\n if (is5.und(props.default)) {\n props.default = true;\n }\n this.start(props);\n }\n }\n /** Equals true when not advancing on each frame. */\n get idle() {\n return !(isAnimating(this) || this._state.asyncTo) || isPaused(this);\n }\n get goal() {\n return getFluidValue2(this.animation.to);\n }\n get velocity() {\n const node = getAnimated2(this);\n return node instanceof AnimatedValue ? node.lastVelocity || 0 : node.getPayload().map((node2) => node2.lastVelocity || 0);\n }\n /**\n * When true, this value has been animated at least once.\n */\n get hasAnimated() {\n return hasAnimated(this);\n }\n /**\n * When true, this value has an unfinished animation,\n * which is either active or paused.\n */\n get isAnimating() {\n return isAnimating(this);\n }\n /**\n * When true, all current and future animations are paused.\n */\n get isPaused() {\n return isPaused(this);\n }\n /**\n *\n *\n */\n get isDelayed() {\n return this._state.delayed;\n }\n /** Advance the current animation by a number of milliseconds */\n advance(dt) {\n let idle = true;\n let changed = false;\n const anim = this.animation;\n let { toValues } = anim;\n const { config: config2 } = anim;\n const payload = getPayload(anim.to);\n if (!payload && hasFluidValue(anim.to)) {\n toValues = toArray2(getFluidValue2(anim.to));\n }\n anim.values.forEach((node2, i) => {\n if (node2.done)\n return;\n const to2 = (\n // Animated strings always go from 0 to 1.\n node2.constructor == AnimatedString ? 1 : payload ? payload[i].lastPosition : toValues[i]\n );\n let finished = anim.immediate;\n let position = to2;\n if (!finished) {\n position = node2.lastPosition;\n if (config2.tension <= 0) {\n node2.done = true;\n return;\n }\n let elapsed = node2.elapsedTime += dt;\n const from = anim.fromValues[i];\n const v0 = node2.v0 != null ? node2.v0 : node2.v0 = is5.arr(config2.velocity) ? config2.velocity[i] : config2.velocity;\n let velocity;\n const precision = config2.precision || (from == to2 ? 5e-3 : Math.min(1, Math.abs(to2 - from) * 1e-3));\n if (!is5.und(config2.duration)) {\n let p = 1;\n if (config2.duration > 0) {\n if (this._memoizedDuration !== config2.duration) {\n this._memoizedDuration = config2.duration;\n if (node2.durationProgress > 0) {\n node2.elapsedTime = config2.duration * node2.durationProgress;\n elapsed = node2.elapsedTime += dt;\n }\n }\n p = (config2.progress || 0) + elapsed / this._memoizedDuration;\n p = p > 1 ? 1 : p < 0 ? 0 : p;\n node2.durationProgress = p;\n }\n position = from + config2.easing(p) * (to2 - from);\n velocity = (position - node2.lastPosition) / dt;\n finished = p == 1;\n } else if (config2.decay) {\n const decay = config2.decay === true ? 0.998 : config2.decay;\n const e = Math.exp(-(1 - decay) * elapsed);\n position = from + v0 / (1 - decay) * (1 - e);\n finished = Math.abs(node2.lastPosition - position) <= precision;\n velocity = v0 * e;\n } else {\n velocity = node2.lastVelocity == null ? v0 : node2.lastVelocity;\n const restVelocity = config2.restVelocity || precision / 10;\n const bounceFactor = config2.clamp ? 0 : config2.bounce;\n const canBounce = !is5.und(bounceFactor);\n const isGrowing = from == to2 ? node2.v0 > 0 : from < to2;\n let isMoving;\n let isBouncing = false;\n const step = 1;\n const numSteps = Math.ceil(dt / step);\n for (let n = 0; n < numSteps; ++n) {\n isMoving = Math.abs(velocity) > restVelocity;\n if (!isMoving) {\n finished = Math.abs(to2 - position) <= precision;\n if (finished) {\n break;\n }\n }\n if (canBounce) {\n isBouncing = position == to2 || position > to2 == isGrowing;\n if (isBouncing) {\n velocity = -velocity * bounceFactor;\n position = to2;\n }\n }\n const springForce = -config2.tension * 1e-6 * (position - to2);\n const dampingForce = -config2.friction * 1e-3 * velocity;\n const acceleration = (springForce + dampingForce) / config2.mass;\n velocity = velocity + acceleration * step;\n position = position + velocity * step;\n }\n }\n node2.lastVelocity = velocity;\n if (Number.isNaN(position)) {\n console.warn(`Got NaN while animating:`, this);\n finished = true;\n }\n }\n if (payload && !payload[i].done) {\n finished = false;\n }\n if (finished) {\n node2.done = true;\n } else {\n idle = false;\n }\n if (node2.setValue(position, config2.round)) {\n changed = true;\n }\n });\n const node = getAnimated2(this);\n const currVal = node.getValue();\n if (idle) {\n const finalVal = getFluidValue2(anim.to);\n if ((currVal !== finalVal || changed) && !config2.decay) {\n node.setValue(finalVal);\n this._onChange(finalVal);\n } else if (changed && config2.decay) {\n this._onChange(currVal);\n }\n this._stop();\n } else if (changed) {\n this._onChange(currVal);\n }\n }\n /** Set the current value, while stopping the current animation */\n set(value) {\n raf3.batchedUpdates(() => {\n this._stop();\n this._focus(value);\n this._set(value);\n });\n return this;\n }\n /**\n * Freeze the active animation in time, as well as any updates merged\n * before `resume` is called.\n */\n pause() {\n this._update({ pause: true });\n }\n /** Resume the animation if paused. */\n resume() {\n this._update({ pause: false });\n }\n /** Skip to the end of the current animation. */\n finish() {\n if (isAnimating(this)) {\n const { to: to2, config: config2 } = this.animation;\n raf3.batchedUpdates(() => {\n this._onStart();\n if (!config2.decay) {\n this._set(to2, false);\n }\n this._stop();\n });\n }\n return this;\n }\n /** Push props into the pending queue. */\n update(props) {\n const queue = this.queue || (this.queue = []);\n queue.push(props);\n return this;\n }\n start(to2, arg2) {\n let queue;\n if (!is5.und(to2)) {\n queue = [is5.obj(to2) ? to2 : { ...arg2, to: to2 }];\n } else {\n queue = this.queue || [];\n this.queue = [];\n }\n return Promise.all(\n queue.map((props) => {\n const up = this._update(props);\n return up;\n })\n ).then((results) => getCombinedResult(this, results));\n }\n /**\n * Stop the current animation, and cancel any delayed updates.\n *\n * Pass `true` to call `onRest` with `cancelled: true`.\n */\n stop(cancel) {\n const { to: to2 } = this.animation;\n this._focus(this.get());\n stopAsync(this._state, cancel && this._lastCallId);\n raf3.batchedUpdates(() => this._stop(to2, cancel));\n return this;\n }\n /** Restart the animation. */\n reset() {\n this._update({ reset: true });\n }\n /** @internal */\n eventObserved(event) {\n if (event.type == \"change\") {\n this._start();\n } else if (event.type == \"priority\") {\n this.priority = event.priority + 1;\n }\n }\n /**\n * Parse the `to` and `from` range from the given `props` object.\n *\n * This also ensures the initial value is available to animated components\n * during the render phase.\n */\n _prepareNode(props) {\n const key = this.key || \"\";\n let { to: to2, from } = props;\n to2 = is5.obj(to2) ? to2[key] : to2;\n if (to2 == null || isAsyncTo(to2)) {\n to2 = void 0;\n }\n from = is5.obj(from) ? from[key] : from;\n if (from == null) {\n from = void 0;\n }\n const range = { to: to2, from };\n if (!hasAnimated(this)) {\n if (props.reverse)\n [to2, from] = [from, to2];\n from = getFluidValue2(from);\n if (!is5.und(from)) {\n this._set(from);\n } else if (!getAnimated2(this)) {\n this._set(to2);\n }\n }\n return range;\n }\n /** Every update is processed by this method before merging. */\n _update({ ...props }, isLoop) {\n const { key, defaultProps } = this;\n if (props.default)\n Object.assign(\n defaultProps,\n getDefaultProps(\n props,\n (value, prop) => /^on/.test(prop) ? resolveProp(value, key) : value\n )\n );\n mergeActiveFn(this, props, \"onProps\");\n sendEvent(this, \"onProps\", props, this);\n const range = this._prepareNode(props);\n if (Object.isFrozen(this)) {\n throw Error(\n \"Cannot animate a `SpringValue` object that is frozen. Did you forget to pass your component to `animated(...)` before animating its props?\"\n );\n }\n const state = this._state;\n return scheduleProps(++this._lastCallId, {\n key,\n props,\n defaultProps,\n state,\n actions: {\n pause: () => {\n if (!isPaused(this)) {\n setPausedBit(this, true);\n flushCalls(state.pauseQueue);\n sendEvent(\n this,\n \"onPause\",\n getFinishedResult(this, checkFinished(this, this.animation.to)),\n this\n );\n }\n },\n resume: () => {\n if (isPaused(this)) {\n setPausedBit(this, false);\n if (isAnimating(this)) {\n this._resume();\n }\n flushCalls(state.resumeQueue);\n sendEvent(\n this,\n \"onResume\",\n getFinishedResult(this, checkFinished(this, this.animation.to)),\n this\n );\n }\n },\n start: this._merge.bind(this, range)\n }\n }).then((result) => {\n if (props.loop && result.finished && !(isLoop && result.noop)) {\n const nextProps = createLoopUpdate(props);\n if (nextProps) {\n return this._update(nextProps, true);\n }\n }\n return result;\n });\n }\n /** Merge props into the current animation */\n _merge(range, props, resolve) {\n if (props.cancel) {\n this.stop(true);\n return resolve(getCancelledResult(this));\n }\n const hasToProp = !is5.und(range.to);\n const hasFromProp = !is5.und(range.from);\n if (hasToProp || hasFromProp) {\n if (props.callId > this._lastToId) {\n this._lastToId = props.callId;\n } else {\n return resolve(getCancelledResult(this));\n }\n }\n const { key, defaultProps, animation: anim } = this;\n const { to: prevTo, from: prevFrom } = anim;\n let { to: to2 = prevTo, from = prevFrom } = range;\n if (hasFromProp && !hasToProp && (!props.default || is5.und(to2))) {\n to2 = from;\n }\n if (props.reverse)\n [to2, from] = [from, to2];\n const hasFromChanged = !isEqual(from, prevFrom);\n if (hasFromChanged) {\n anim.from = from;\n }\n from = getFluidValue2(from);\n const hasToChanged = !isEqual(to2, prevTo);\n if (hasToChanged) {\n this._focus(to2);\n }\n const hasAsyncTo = isAsyncTo(props.to);\n const { config: config2 } = anim;\n const { decay, velocity } = config2;\n if (hasToProp || hasFromProp) {\n config2.velocity = 0;\n }\n if (props.config && !hasAsyncTo) {\n mergeConfig(\n config2,\n callProp(props.config, key),\n // Avoid calling the same \"config\" prop twice.\n props.config !== defaultProps.config ? callProp(defaultProps.config, key) : void 0\n );\n }\n let node = getAnimated2(this);\n if (!node || is5.und(to2)) {\n return resolve(getFinishedResult(this, true));\n }\n const reset = (\n // When `reset` is undefined, the `from` prop implies `reset: true`,\n // except for declarative updates. When `reset` is defined, there\n // must exist a value to animate from.\n is5.und(props.reset) ? hasFromProp && !props.default : !is5.und(from) && matchProp(props.reset, key)\n );\n const value = reset ? from : this.get();\n const goal = computeGoal(to2);\n const isAnimatable = is5.num(goal) || is5.arr(goal) || isAnimatedString2(goal);\n const immediate = !hasAsyncTo && (!isAnimatable || matchProp(defaultProps.immediate || props.immediate, key));\n if (hasToChanged) {\n const nodeType = getAnimatedType(to2);\n if (nodeType !== node.constructor) {\n if (immediate) {\n node = this._set(goal);\n } else\n throw Error(\n `Cannot animate between ${node.constructor.name} and ${nodeType.name}, as the \"to\" prop suggests`\n );\n }\n }\n const goalType = node.constructor;\n let started = hasFluidValue(to2);\n let finished = false;\n if (!started) {\n const hasValueChanged = reset || !hasAnimated(this) && hasFromChanged;\n if (hasToChanged || hasValueChanged) {\n finished = isEqual(computeGoal(value), goal);\n started = !finished;\n }\n if (!isEqual(anim.immediate, immediate) && !immediate || !isEqual(config2.decay, decay) || !isEqual(config2.velocity, velocity)) {\n started = true;\n }\n }\n if (finished && isAnimating(this)) {\n if (anim.changed && !reset) {\n started = true;\n } else if (!started) {\n this._stop(prevTo);\n }\n }\n if (!hasAsyncTo) {\n if (started || hasFluidValue(prevTo)) {\n anim.values = node.getPayload();\n anim.toValues = hasFluidValue(to2) ? null : goalType == AnimatedString ? [1] : toArray2(goal);\n }\n if (anim.immediate != immediate) {\n anim.immediate = immediate;\n if (!immediate && !reset) {\n this._set(prevTo);\n }\n }\n if (started) {\n const { onRest } = anim;\n each2(ACTIVE_EVENTS, (type) => mergeActiveFn(this, props, type));\n const result = getFinishedResult(this, checkFinished(this, prevTo));\n flushCalls(this._pendingCalls, result);\n this._pendingCalls.add(resolve);\n if (anim.changed)\n raf3.batchedUpdates(() => {\n anim.changed = !reset;\n onRest?.(result, this);\n if (reset) {\n callProp(defaultProps.onRest, result);\n } else {\n anim.onStart?.(result, this);\n }\n });\n }\n }\n if (reset) {\n this._set(value);\n }\n if (hasAsyncTo) {\n resolve(runAsync(props.to, props, this._state, this));\n } else if (started) {\n this._start();\n } else if (isAnimating(this) && !hasToChanged) {\n this._pendingCalls.add(resolve);\n } else {\n resolve(getNoopResult(value));\n }\n }\n /** Update the `animation.to` value, which might be a `FluidValue` */\n _focus(value) {\n const anim = this.animation;\n if (value !== anim.to) {\n if (getFluidObservers(this)) {\n this._detach();\n }\n anim.to = value;\n if (getFluidObservers(this)) {\n this._attach();\n }\n }\n }\n _attach() {\n let priority = 0;\n const { to: to2 } = this.animation;\n if (hasFluidValue(to2)) {\n addFluidObserver(to2, this);\n if (isFrameValue(to2)) {\n priority = to2.priority + 1;\n }\n }\n this.priority = priority;\n }\n _detach() {\n const { to: to2 } = this.animation;\n if (hasFluidValue(to2)) {\n removeFluidObserver(to2, this);\n }\n }\n /**\n * Update the current value from outside the frameloop,\n * and return the `Animated` node.\n */\n _set(arg, idle = true) {\n const value = getFluidValue2(arg);\n if (!is5.und(value)) {\n const oldNode = getAnimated2(this);\n if (!oldNode || !isEqual(value, oldNode.getValue())) {\n const nodeType = getAnimatedType(value);\n if (!oldNode || oldNode.constructor != nodeType) {\n setAnimated(this, nodeType.create(value));\n } else {\n oldNode.setValue(value);\n }\n if (oldNode) {\n raf3.batchedUpdates(() => {\n this._onChange(value, idle);\n });\n }\n }\n }\n return getAnimated2(this);\n }\n _onStart() {\n const anim = this.animation;\n if (!anim.changed) {\n anim.changed = true;\n sendEvent(\n this,\n \"onStart\",\n getFinishedResult(this, checkFinished(this, anim.to)),\n this\n );\n }\n }\n _onChange(value, idle) {\n if (!idle) {\n this._onStart();\n callProp(this.animation.onChange, value, this);\n }\n callProp(this.defaultProps.onChange, value, this);\n super._onChange(value, idle);\n }\n // This method resets the animation state (even if already animating) to\n // ensure the latest from/to range is used, and it also ensures this spring\n // is added to the frameloop.\n _start() {\n const anim = this.animation;\n getAnimated2(this).reset(getFluidValue2(anim.to));\n if (!anim.immediate) {\n anim.fromValues = anim.values.map((node) => node.lastPosition);\n }\n if (!isAnimating(this)) {\n setActiveBit(this, true);\n if (!isPaused(this)) {\n this._resume();\n }\n }\n }\n _resume() {\n if (G5.skipAnimation) {\n this.finish();\n } else {\n frameLoop2.start(this);\n }\n }\n /**\n * Exit the frameloop and notify `onRest` listeners.\n *\n * Always wrap `_stop` calls with `batchedUpdates`.\n */\n _stop(goal, cancel) {\n if (isAnimating(this)) {\n setActiveBit(this, false);\n const anim = this.animation;\n each2(anim.values, (node) => {\n node.done = true;\n });\n if (anim.toValues) {\n anim.onChange = anim.onPause = anim.onResume = void 0;\n }\n callFluidObservers2(this, {\n type: \"idle\",\n parent: this\n });\n const result = cancel ? getCancelledResult(this.get()) : getFinishedResult(this.get(), checkFinished(this, goal ?? anim.to));\n flushCalls(this._pendingCalls, result);\n if (anim.changed) {\n anim.changed = false;\n sendEvent(this, \"onRest\", result, this);\n }\n }\n }\n};\nfunction checkFinished(target, to2) {\n const goal = computeGoal(to2);\n const value = computeGoal(target.get());\n return isEqual(value, goal);\n}\nfunction createLoopUpdate(props, loop = props.loop, to2 = props.to) {\n const loopRet = callProp(loop);\n if (loopRet) {\n const overrides = loopRet !== true && inferTo(loopRet);\n const reverse = (overrides || props).reverse;\n const reset = !overrides || overrides.reset;\n return createUpdate({\n ...props,\n loop,\n // Avoid updating default props when looping.\n default: false,\n // Never loop the `pause` prop.\n pause: void 0,\n // For the \"reverse\" prop to loop as expected, the \"to\" prop\n // must be undefined. The \"reverse\" prop is ignored when the\n // \"to\" prop is an array or function.\n to: !reverse || isAsyncTo(to2) ? to2 : void 0,\n // Ignore the \"from\" prop except on reset.\n from: reset ? props.from : void 0,\n reset,\n // The \"loop\" prop can return a \"useSpring\" props object to\n // override any of the original props.\n ...overrides\n });\n }\n}\nfunction createUpdate(props) {\n const { to: to2, from } = props = inferTo(props);\n const keys = /* @__PURE__ */ new Set();\n if (is5.obj(to2))\n findDefined(to2, keys);\n if (is5.obj(from))\n findDefined(from, keys);\n props.keys = keys.size ? Array.from(keys) : null;\n return props;\n}\nfunction declareUpdate(props) {\n const update2 = createUpdate(props);\n if (is5.und(update2.default)) {\n update2.default = getDefaultProps(update2);\n }\n return update2;\n}\nfunction findDefined(values, keys) {\n eachProp3(values, (value, key) => value != null && keys.add(key));\n}\nvar ACTIVE_EVENTS = [\n \"onStart\",\n \"onRest\",\n \"onChange\",\n \"onPause\",\n \"onResume\"\n];\nfunction mergeActiveFn(target, props, type) {\n target.animation[type] = props[type] !== getDefaultProp(props, type) ? resolveProp(props[type], target.key) : void 0;\n}\nfunction sendEvent(target, type, ...args) {\n target.animation[type]?.(...args);\n target.defaultProps[type]?.(...args);\n}\n\n// src/Controller.ts\nimport {\n is as is6,\n raf as raf4,\n each as each3,\n noop,\n flush as flush2,\n toArray as toArray3,\n eachProp as eachProp4,\n flushCalls as flushCalls2,\n addFluidObserver as addFluidObserver2\n} from \"@react-spring/shared\";\nvar BATCHED_EVENTS = [\"onStart\", \"onChange\", \"onRest\"];\nvar nextId2 = 1;\nvar Controller = class {\n constructor(props, flush3) {\n this.id = nextId2++;\n /** The animated values */\n this.springs = {};\n /** The queue of props passed to the `update` method. */\n this.queue = [];\n /** The counter for tracking `scheduleProps` calls */\n this._lastAsyncId = 0;\n /** The values currently being animated */\n this._active = /* @__PURE__ */ new Set();\n /** The values that changed recently */\n this._changed = /* @__PURE__ */ new Set();\n /** Equals false when `onStart` listeners can be called */\n this._started = false;\n /** State used by the `runAsync` function */\n this._state = {\n paused: false,\n pauseQueue: /* @__PURE__ */ new Set(),\n resumeQueue: /* @__PURE__ */ new Set(),\n timeouts: /* @__PURE__ */ new Set()\n };\n /** The event queues that are flushed once per frame maximum */\n this._events = {\n onStart: /* @__PURE__ */ new Map(),\n onChange: /* @__PURE__ */ new Map(),\n onRest: /* @__PURE__ */ new Map()\n };\n this._onFrame = this._onFrame.bind(this);\n if (flush3) {\n this._flush = flush3;\n }\n if (props) {\n this.start({ default: true, ...props });\n }\n }\n /**\n * Equals `true` when no spring values are in the frameloop, and\n * no async animation is currently active.\n */\n get idle() {\n return !this._state.asyncTo && Object.values(this.springs).every((spring) => {\n return spring.idle && !spring.isDelayed && !spring.isPaused;\n });\n }\n get item() {\n return this._item;\n }\n set item(item) {\n this._item = item;\n }\n /** Get the current values of our springs */\n get() {\n const values = {};\n this.each((spring, key) => values[key] = spring.get());\n return values;\n }\n /** Set the current values without animating. */\n set(values) {\n for (const key in values) {\n const value = values[key];\n if (!is6.und(value)) {\n this.springs[key].set(value);\n }\n }\n }\n /** Push an update onto the queue of each value. */\n update(props) {\n if (props) {\n this.queue.push(createUpdate(props));\n }\n return this;\n }\n /**\n * Start the queued animations for every spring, and resolve the returned\n * promise once all queued animations have finished or been cancelled.\n *\n * When you pass a queue (instead of nothing), that queue is used instead of\n * the queued animations added with the `update` method, which are left alone.\n */\n start(props) {\n let { queue } = this;\n if (props) {\n queue = toArray3(props).map(createUpdate);\n } else {\n this.queue = [];\n }\n if (this._flush) {\n return this._flush(this, queue);\n }\n prepareKeys(this, queue);\n return flushUpdateQueue(this, queue);\n }\n /** @internal */\n stop(arg, keys) {\n if (arg !== !!arg) {\n keys = arg;\n }\n if (keys) {\n const springs = this.springs;\n each3(toArray3(keys), (key) => springs[key].stop(!!arg));\n } else {\n stopAsync(this._state, this._lastAsyncId);\n this.each((spring) => spring.stop(!!arg));\n }\n return this;\n }\n /** Freeze the active animation in time */\n pause(keys) {\n if (is6.und(keys)) {\n this.start({ pause: true });\n } else {\n const springs = this.springs;\n each3(toArray3(keys), (key) => springs[key].pause());\n }\n return this;\n }\n /** Resume the animation if paused. */\n resume(keys) {\n if (is6.und(keys)) {\n this.start({ pause: false });\n } else {\n const springs = this.springs;\n each3(toArray3(keys), (key) => springs[key].resume());\n }\n return this;\n }\n /** Call a function once per spring value */\n each(iterator) {\n eachProp4(this.springs, iterator);\n }\n /** @internal Called at the end of every animation frame */\n _onFrame() {\n const { onStart, onChange, onRest } = this._events;\n const active = this._active.size > 0;\n const changed = this._changed.size > 0;\n if (active && !this._started || changed && !this._started) {\n this._started = true;\n flush2(onStart, ([onStart2, result]) => {\n result.value = this.get();\n onStart2(result, this, this._item);\n });\n }\n const idle = !active && this._started;\n const values = changed || idle && onRest.size ? this.get() : null;\n if (changed && onChange.size) {\n flush2(onChange, ([onChange2, result]) => {\n result.value = values;\n onChange2(result, this, this._item);\n });\n }\n if (idle) {\n this._started = false;\n flush2(onRest, ([onRest2, result]) => {\n result.value = values;\n onRest2(result, this, this._item);\n });\n }\n }\n /** @internal */\n eventObserved(event) {\n if (event.type == \"change\") {\n this._changed.add(event.parent);\n if (!event.idle) {\n this._active.add(event.parent);\n }\n } else if (event.type == \"idle\") {\n this._active.delete(event.parent);\n } else\n return;\n raf4.onFrame(this._onFrame);\n }\n};\nfunction flushUpdateQueue(ctrl, queue) {\n return Promise.all(queue.map((props) => flushUpdate(ctrl, props))).then(\n (results) => getCombinedResult(ctrl, results)\n );\n}\nasync function flushUpdate(ctrl, props, isLoop) {\n const { keys, to: to2, from, loop, onRest, onResolve } = props;\n const defaults2 = is6.obj(props.default) && props.default;\n if (loop) {\n props.loop = false;\n }\n if (to2 === false)\n props.to = null;\n if (from === false)\n props.from = null;\n const asyncTo = is6.arr(to2) || is6.fun(to2) ? to2 : void 0;\n if (asyncTo) {\n props.to = void 0;\n props.onRest = void 0;\n if (defaults2) {\n defaults2.onRest = void 0;\n }\n } else {\n each3(BATCHED_EVENTS, (key) => {\n const handler = props[key];\n if (is6.fun(handler)) {\n const queue = ctrl[\"_events\"][key];\n props[key] = ({ finished, cancelled }) => {\n const result2 = queue.get(handler);\n if (result2) {\n if (!finished)\n result2.finished = false;\n if (cancelled)\n result2.cancelled = true;\n } else {\n queue.set(handler, {\n value: null,\n finished: finished || false,\n cancelled: cancelled || false\n });\n }\n };\n if (defaults2) {\n defaults2[key] = props[key];\n }\n }\n });\n }\n const state = ctrl[\"_state\"];\n if (props.pause === !state.paused) {\n state.paused = props.pause;\n flushCalls2(props.pause ? state.pauseQueue : state.resumeQueue);\n } else if (state.paused) {\n props.pause = true;\n }\n const promises = (keys || Object.keys(ctrl.springs)).map(\n (key) => ctrl.springs[key].start(props)\n );\n const cancel = props.cancel === true || getDefaultProp(props, \"cancel\") === true;\n if (asyncTo || cancel && state.asyncId) {\n promises.push(\n scheduleProps(++ctrl[\"_lastAsyncId\"], {\n props,\n state,\n actions: {\n pause: noop,\n resume: noop,\n start(props2, resolve) {\n if (cancel) {\n stopAsync(state, ctrl[\"_lastAsyncId\"]);\n resolve(getCancelledResult(ctrl));\n } else {\n props2.onRest = onRest;\n resolve(\n runAsync(\n asyncTo,\n props2,\n state,\n ctrl\n )\n );\n }\n }\n }\n })\n );\n }\n if (state.paused) {\n await new Promise((resume) => {\n state.resumeQueue.add(resume);\n });\n }\n const result = getCombinedResult(ctrl, await Promise.all(promises));\n if (loop && result.finished && !(isLoop && result.noop)) {\n const nextProps = createLoopUpdate(props, loop, to2);\n if (nextProps) {\n prepareKeys(ctrl, [nextProps]);\n return flushUpdate(ctrl, nextProps, true);\n }\n }\n if (onResolve) {\n raf4.batchedUpdates(() => onResolve(result, ctrl, ctrl.item));\n }\n return result;\n}\nfunction getSprings(ctrl, props) {\n const springs = { ...ctrl.springs };\n if (props) {\n each3(toArray3(props), (props2) => {\n if (is6.und(props2.keys)) {\n props2 = createUpdate(props2);\n }\n if (!is6.obj(props2.to)) {\n props2 = { ...props2, to: void 0 };\n }\n prepareSprings(springs, props2, (key) => {\n return createSpring(key);\n });\n });\n }\n setSprings(ctrl, springs);\n return springs;\n}\nfunction setSprings(ctrl, springs) {\n eachProp4(springs, (spring, key) => {\n if (!ctrl.springs[key]) {\n ctrl.springs[key] = spring;\n addFluidObserver2(spring, ctrl);\n }\n });\n}\nfunction createSpring(key, observer) {\n const spring = new SpringValue();\n spring.key = key;\n if (observer) {\n addFluidObserver2(spring, observer);\n }\n return spring;\n}\nfunction prepareSprings(springs, props, create) {\n if (props.keys) {\n each3(props.keys, (key) => {\n const spring = springs[key] || (springs[key] = create(key));\n spring[\"_prepareNode\"](props);\n });\n }\n}\nfunction prepareKeys(ctrl, queue) {\n each3(queue, (props) => {\n prepareSprings(ctrl.springs, props, (key) => {\n return createSpring(key, ctrl);\n });\n });\n}\n\n// src/SpringContext.tsx\nimport * as React from \"react\";\nimport { useContext } from \"react\";\nimport { useMemoOne } from \"@react-spring/shared\";\nvar SpringContext = ({\n children,\n ...props\n}) => {\n const inherited = useContext(ctx);\n const pause = props.pause || !!inherited.pause, immediate = props.immediate || !!inherited.immediate;\n props = useMemoOne(() => ({ pause, immediate }), [pause, immediate]);\n const { Provider } = ctx;\n return /* @__PURE__ */ React.createElement(Provider, { value: props }, children);\n};\nvar ctx = makeContext(SpringContext, {});\nSpringContext.Provider = ctx.Provider;\nSpringContext.Consumer = ctx.Consumer;\nfunction makeContext(target, init) {\n Object.assign(target, React.createContext(init));\n target.Provider._context = target;\n target.Consumer._context = target;\n return target;\n}\n\n// src/SpringRef.ts\nimport { each as each4, is as is7, deprecateDirectCall } from \"@react-spring/shared\";\nvar SpringRef = () => {\n const current = [];\n const SpringRef2 = function(props) {\n deprecateDirectCall();\n const results = [];\n each4(current, (ctrl, i) => {\n if (is7.und(props)) {\n results.push(ctrl.start());\n } else {\n const update2 = _getProps(props, ctrl, i);\n if (update2) {\n results.push(ctrl.start(update2));\n }\n }\n });\n return results;\n };\n SpringRef2.current = current;\n SpringRef2.add = function(ctrl) {\n if (!current.includes(ctrl)) {\n current.push(ctrl);\n }\n };\n SpringRef2.delete = function(ctrl) {\n const i = current.indexOf(ctrl);\n if (~i)\n current.splice(i, 1);\n };\n SpringRef2.pause = function() {\n each4(current, (ctrl) => ctrl.pause(...arguments));\n return this;\n };\n SpringRef2.resume = function() {\n each4(current, (ctrl) => ctrl.resume(...arguments));\n return this;\n };\n SpringRef2.set = function(values) {\n each4(current, (ctrl, i) => {\n const update2 = is7.fun(values) ? values(i, ctrl) : values;\n if (update2) {\n ctrl.set(update2);\n }\n });\n };\n SpringRef2.start = function(props) {\n const results = [];\n each4(current, (ctrl, i) => {\n if (is7.und(props)) {\n results.push(ctrl.start());\n } else {\n const update2 = this._getProps(props, ctrl, i);\n if (update2) {\n results.push(ctrl.start(update2));\n }\n }\n });\n return results;\n };\n SpringRef2.stop = function() {\n each4(current, (ctrl) => ctrl.stop(...arguments));\n return this;\n };\n SpringRef2.update = function(props) {\n each4(current, (ctrl, i) => ctrl.update(this._getProps(props, ctrl, i)));\n return this;\n };\n const _getProps = function(arg, ctrl, index) {\n return is7.fun(arg) ? arg(index, ctrl) : arg;\n };\n SpringRef2._getProps = _getProps;\n return SpringRef2;\n};\n\n// src/hooks/useSprings.ts\nfunction useSprings(length, props, deps) {\n const propsFn = is8.fun(props) && props;\n if (propsFn && !deps)\n deps = [];\n const ref = useMemo(\n () => propsFn || arguments.length == 3 ? SpringRef() : void 0,\n []\n );\n const layoutId = useRef(0);\n const forceUpdate = useForceUpdate();\n const state = useMemo(\n () => ({\n ctrls: [],\n queue: [],\n flush(ctrl, updates2) {\n const springs2 = getSprings(ctrl, updates2);\n const canFlushSync = layoutId.current > 0 && !state.queue.length && !Object.keys(springs2).some((key) => !ctrl.springs[key]);\n return canFlushSync ? flushUpdateQueue(ctrl, updates2) : new Promise((resolve) => {\n setSprings(ctrl, springs2);\n state.queue.push(() => {\n resolve(flushUpdateQueue(ctrl, updates2));\n });\n forceUpdate();\n });\n }\n }),\n []\n );\n const ctrls = useRef([...state.ctrls]);\n const updates = [];\n const prevLength = usePrev(length) || 0;\n useMemo(() => {\n each5(ctrls.current.slice(length, prevLength), (ctrl) => {\n detachRefs(ctrl, ref);\n ctrl.stop(true);\n });\n ctrls.current.length = length;\n declareUpdates(prevLength, length);\n }, [length]);\n useMemo(() => {\n declareUpdates(0, Math.min(prevLength, length));\n }, deps);\n function declareUpdates(startIndex, endIndex) {\n for (let i = startIndex; i < endIndex; i++) {\n const ctrl = ctrls.current[i] || (ctrls.current[i] = new Controller(null, state.flush));\n const update2 = propsFn ? propsFn(i, ctrl) : props[i];\n if (update2) {\n updates[i] = declareUpdate(update2);\n }\n }\n }\n const springs = ctrls.current.map((ctrl, i) => getSprings(ctrl, updates[i]));\n const context = useContext2(SpringContext);\n const prevContext = usePrev(context);\n const hasContext = context !== prevContext && hasProps(context);\n useIsomorphicLayoutEffect2(() => {\n layoutId.current++;\n state.ctrls = ctrls.current;\n const { queue } = state;\n if (queue.length) {\n state.queue = [];\n each5(queue, (cb) => cb());\n }\n each5(ctrls.current, (ctrl, i) => {\n ref?.add(ctrl);\n if (hasContext) {\n ctrl.start({ default: context });\n }\n const update2 = updates[i];\n if (update2) {\n replaceRef(ctrl, update2.ref);\n if (ctrl.ref) {\n ctrl.queue.push(update2);\n } else {\n ctrl.start(update2);\n }\n }\n });\n });\n useOnce(() => () => {\n each5(state.ctrls, (ctrl) => ctrl.stop(true));\n });\n const values = springs.map((x) => ({ ...x }));\n return ref ? [values, ref] : values;\n}\n\n// src/hooks/useSpring.ts\nfunction useSpring(props, deps) {\n const isFn = is9.fun(props);\n const [[values], ref] = useSprings(\n 1,\n isFn ? props : [props],\n isFn ? deps || [] : deps\n );\n return isFn || arguments.length == 2 ? [values, ref] : values;\n}\n\n// src/hooks/useSpringRef.ts\nimport { useState } from \"react\";\nvar initSpringRef = () => SpringRef();\nvar useSpringRef = () => useState(initSpringRef)[0];\n\n// src/hooks/useSpringValue.ts\nimport { useConstant, useOnce as useOnce2 } from \"@react-spring/shared\";\nvar useSpringValue = (initial, props) => {\n const springValue = useConstant(() => new SpringValue(initial, props));\n useOnce2(() => () => {\n springValue.stop();\n });\n return springValue;\n};\n\n// src/hooks/useTrail.ts\nimport { each as each6, is as is10, useIsomorphicLayoutEffect as useIsomorphicLayoutEffect3 } from \"@react-spring/shared\";\nfunction useTrail(length, propsArg, deps) {\n const propsFn = is10.fun(propsArg) && propsArg;\n if (propsFn && !deps)\n deps = [];\n let reverse = true;\n let passedRef = void 0;\n const result = useSprings(\n length,\n (i, ctrl) => {\n const props = propsFn ? propsFn(i, ctrl) : propsArg;\n passedRef = props.ref;\n reverse = reverse && props.reverse;\n return props;\n },\n // Ensure the props function is called when no deps exist.\n // This works around the 3 argument rule.\n deps || [{}]\n );\n useIsomorphicLayoutEffect3(() => {\n each6(result[1].current, (ctrl, i) => {\n const parent = result[1].current[i + (reverse ? 1 : -1)];\n replaceRef(ctrl, passedRef);\n if (ctrl.ref) {\n if (parent) {\n ctrl.update({ to: parent.springs });\n }\n return;\n }\n if (parent) {\n ctrl.start({ to: parent.springs });\n } else {\n ctrl.start();\n }\n });\n }, deps);\n if (propsFn || arguments.length == 3) {\n const ref = passedRef ?? result[1];\n ref[\"_getProps\"] = (propsArg2, ctrl, i) => {\n const props = is10.fun(propsArg2) ? propsArg2(i, ctrl) : propsArg2;\n if (props) {\n const parent = ref.current[i + (props.reverse ? 1 : -1)];\n if (parent)\n props.to = parent.springs;\n return props;\n }\n };\n return result;\n }\n return result[0];\n}\n\n// src/hooks/useTransition.tsx\nimport * as React2 from \"react\";\nimport { useContext as useContext3, useRef as useRef2, useMemo as useMemo2 } from \"react\";\nimport {\n is as is11,\n toArray as toArray4,\n useForceUpdate as useForceUpdate2,\n useOnce as useOnce3,\n usePrev as usePrev2,\n each as each7,\n useIsomorphicLayoutEffect as useIsomorphicLayoutEffect4\n} from \"@react-spring/shared\";\nfunction useTransition(data, props, deps) {\n const propsFn = is11.fun(props) && props;\n const {\n reset,\n sort,\n trail = 0,\n expires = true,\n exitBeforeEnter = false,\n onDestroyed,\n ref: propsRef,\n config: propsConfig\n } = propsFn ? propsFn() : props;\n const ref = useMemo2(\n () => propsFn || arguments.length == 3 ? SpringRef() : void 0,\n []\n );\n const items = toArray4(data);\n const transitions = [];\n const usedTransitions = useRef2(null);\n const prevTransitions = reset ? null : usedTransitions.current;\n useIsomorphicLayoutEffect4(() => {\n usedTransitions.current = transitions;\n });\n useOnce3(() => {\n each7(transitions, (t) => {\n ref?.add(t.ctrl);\n t.ctrl.ref = ref;\n });\n return () => {\n each7(usedTransitions.current, (t) => {\n if (t.expired) {\n clearTimeout(t.expirationId);\n }\n detachRefs(t.ctrl, ref);\n t.ctrl.stop(true);\n });\n };\n });\n const keys = getKeys(items, propsFn ? propsFn() : props, prevTransitions);\n const expired = reset && usedTransitions.current || [];\n useIsomorphicLayoutEffect4(\n () => each7(expired, ({ ctrl, item, key }) => {\n detachRefs(ctrl, ref);\n callProp(onDestroyed, item, key);\n })\n );\n const reused = [];\n if (prevTransitions)\n each7(prevTransitions, (t, i) => {\n if (t.expired) {\n clearTimeout(t.expirationId);\n expired.push(t);\n } else {\n i = reused[i] = keys.indexOf(t.key);\n if (~i)\n transitions[i] = t;\n }\n });\n each7(items, (item, i) => {\n if (!transitions[i]) {\n transitions[i] = {\n key: keys[i],\n item,\n phase: \"mount\" /* MOUNT */,\n ctrl: new Controller()\n };\n transitions[i].ctrl.item = item;\n }\n });\n if (reused.length) {\n let i = -1;\n const { leave } = propsFn ? propsFn() : props;\n each7(reused, (keyIndex, prevIndex) => {\n const t = prevTransitions[prevIndex];\n if (~keyIndex) {\n i = transitions.indexOf(t);\n transitions[i] = { ...t, item: items[keyIndex] };\n } else if (leave) {\n transitions.splice(++i, 0, t);\n }\n });\n }\n if (is11.fun(sort)) {\n transitions.sort((a, b) => sort(a.item, b.item));\n }\n let delay = -trail;\n const forceUpdate = useForceUpdate2();\n const defaultProps = getDefaultProps(props);\n const changes = /* @__PURE__ */ new Map();\n const exitingTransitions = useRef2(/* @__PURE__ */ new Map());\n const forceChange = useRef2(false);\n each7(transitions, (t, i) => {\n const key = t.key;\n const prevPhase = t.phase;\n const p = propsFn ? propsFn() : props;\n let to2;\n let phase;\n const propsDelay = callProp(p.delay || 0, key);\n if (prevPhase == \"mount\" /* MOUNT */) {\n to2 = p.enter;\n phase = \"enter\" /* ENTER */;\n } else {\n const isLeave = keys.indexOf(key) < 0;\n if (prevPhase != \"leave\" /* LEAVE */) {\n if (isLeave) {\n to2 = p.leave;\n phase = \"leave\" /* LEAVE */;\n } else if (to2 = p.update) {\n phase = \"update\" /* UPDATE */;\n } else\n return;\n } else if (!isLeave) {\n to2 = p.enter;\n phase = \"enter\" /* ENTER */;\n } else\n return;\n }\n to2 = callProp(to2, t.item, i);\n to2 = is11.obj(to2) ? inferTo(to2) : { to: to2 };\n if (!to2.config) {\n const config2 = propsConfig || defaultProps.config;\n to2.config = callProp(config2, t.item, i, phase);\n }\n delay += trail;\n const payload = {\n ...defaultProps,\n // we need to add our props.delay value you here.\n delay: propsDelay + delay,\n ref: propsRef,\n immediate: p.immediate,\n // This prevents implied resets.\n reset: false,\n // Merge any phase-specific props.\n ...to2\n };\n if (phase == \"enter\" /* ENTER */ && is11.und(payload.from)) {\n const p2 = propsFn ? propsFn() : props;\n const from = is11.und(p2.initial) || prevTransitions ? p2.from : p2.initial;\n payload.from = callProp(from, t.item, i);\n }\n const { onResolve } = payload;\n payload.onResolve = (result) => {\n callProp(onResolve, result);\n const transitions2 = usedTransitions.current;\n const t2 = transitions2.find((t3) => t3.key === key);\n if (!t2)\n return;\n if (result.cancelled && t2.phase != \"update\" /* UPDATE */) {\n return;\n }\n if (t2.ctrl.idle) {\n const idle = transitions2.every((t3) => t3.ctrl.idle);\n if (t2.phase == \"leave\" /* LEAVE */) {\n const expiry = callProp(expires, t2.item);\n if (expiry !== false) {\n const expiryMs = expiry === true ? 0 : expiry;\n t2.expired = true;\n if (!idle && expiryMs > 0) {\n if (expiryMs <= 2147483647)\n t2.expirationId = setTimeout(forceUpdate, expiryMs);\n return;\n }\n }\n }\n if (idle && transitions2.some((t3) => t3.expired)) {\n exitingTransitions.current.delete(t2);\n if (exitBeforeEnter) {\n forceChange.current = true;\n }\n forceUpdate();\n }\n }\n };\n const springs = getSprings(t.ctrl, payload);\n if (phase === \"leave\" /* LEAVE */ && exitBeforeEnter) {\n exitingTransitions.current.set(t, { phase, springs, payload });\n } else {\n changes.set(t, { phase, springs, payload });\n }\n });\n const context = useContext3(SpringContext);\n const prevContext = usePrev2(context);\n const hasContext = context !== prevContext && hasProps(context);\n useIsomorphicLayoutEffect4(() => {\n if (hasContext) {\n each7(transitions, (t) => {\n t.ctrl.start({ default: context });\n });\n }\n }, [context]);\n each7(changes, (_, t) => {\n if (exitingTransitions.current.size) {\n const ind = transitions.findIndex((state) => state.key === t.key);\n transitions.splice(ind, 1);\n }\n });\n useIsomorphicLayoutEffect4(\n () => {\n each7(\n exitingTransitions.current.size ? exitingTransitions.current : changes,\n ({ phase, payload }, t) => {\n const { ctrl } = t;\n t.phase = phase;\n ref?.add(ctrl);\n if (hasContext && phase == \"enter\" /* ENTER */) {\n ctrl.start({ default: context });\n }\n if (payload) {\n replaceRef(ctrl, payload.ref);\n if ((ctrl.ref || ref) && !forceChange.current) {\n ctrl.update(payload);\n } else {\n ctrl.start(payload);\n if (forceChange.current) {\n forceChange.current = false;\n }\n }\n }\n }\n );\n },\n reset ? void 0 : deps\n );\n const renderTransitions = (render) => /* @__PURE__ */ React2.createElement(React2.Fragment, null, transitions.map((t, i) => {\n const { springs } = changes.get(t) || t.ctrl;\n const elem = render({ ...springs }, t.item, t, i);\n return elem && elem.type ? /* @__PURE__ */ React2.createElement(\n elem.type,\n {\n ...elem.props,\n key: is11.str(t.key) || is11.num(t.key) ? t.key : t.ctrl.id,\n ref: elem.ref\n }\n ) : elem;\n }));\n return ref ? [renderTransitions, ref] : renderTransitions;\n}\nvar nextKey = 1;\nfunction getKeys(items, { key, keys = key }, prevTransitions) {\n if (keys === null) {\n const reused = /* @__PURE__ */ new Set();\n return items.map((item) => {\n const t = prevTransitions && prevTransitions.find(\n (t2) => t2.item === item && t2.phase !== \"leave\" /* LEAVE */ && !reused.has(t2)\n );\n if (t) {\n reused.add(t);\n return t.key;\n }\n return nextKey++;\n });\n }\n return is11.und(keys) ? items : is11.fun(keys) ? items.map(keys) : toArray4(keys);\n}\n\n// src/hooks/useScroll.ts\nimport { each as each8, onScroll, useIsomorphicLayoutEffect as useIsomorphicLayoutEffect5 } from \"@react-spring/shared\";\nvar useScroll = ({\n container,\n ...springOptions\n} = {}) => {\n const [scrollValues, api] = useSpring(\n () => ({\n scrollX: 0,\n scrollY: 0,\n scrollXProgress: 0,\n scrollYProgress: 0,\n ...springOptions\n }),\n []\n );\n useIsomorphicLayoutEffect5(() => {\n const cleanupScroll = onScroll(\n ({ x, y }) => {\n api.start({\n scrollX: x.current,\n scrollXProgress: x.progress,\n scrollY: y.current,\n scrollYProgress: y.progress\n });\n },\n { container: container?.current || void 0 }\n );\n return () => {\n each8(Object.values(scrollValues), (value) => value.stop());\n cleanupScroll();\n };\n }, []);\n return scrollValues;\n};\n\n// src/hooks/useResize.ts\nimport { onResize, each as each9, useIsomorphicLayoutEffect as useIsomorphicLayoutEffect6 } from \"@react-spring/shared\";\nvar useResize = ({\n container,\n ...springOptions\n}) => {\n const [sizeValues, api] = useSpring(\n () => ({\n width: 0,\n height: 0,\n ...springOptions\n }),\n []\n );\n useIsomorphicLayoutEffect6(() => {\n const cleanupScroll = onResize(\n ({ width, height }) => {\n api.start({\n width,\n height,\n immediate: sizeValues.width.get() === 0 || sizeValues.height.get() === 0\n });\n },\n { container: container?.current || void 0 }\n );\n return () => {\n each9(Object.values(sizeValues), (value) => value.stop());\n cleanupScroll();\n };\n }, []);\n return sizeValues;\n};\n\n// src/hooks/useInView.ts\nimport { useRef as useRef3, useState as useState2 } from \"react\";\nimport { is as is12, useIsomorphicLayoutEffect as useIsomorphicLayoutEffect7 } from \"@react-spring/shared\";\nvar defaultThresholdOptions = {\n any: 0,\n all: 1\n};\nfunction useInView(props, args) {\n const [isInView, setIsInView] = useState2(false);\n const ref = useRef3();\n const propsFn = is12.fun(props) && props;\n const springsProps = propsFn ? propsFn() : {};\n const { to: to2 = {}, from = {}, ...restSpringProps } = springsProps;\n const intersectionArguments = propsFn ? args : props;\n const [springs, api] = useSpring(() => ({ from, ...restSpringProps }), []);\n useIsomorphicLayoutEffect7(() => {\n const element = ref.current;\n const {\n root,\n once,\n amount = \"any\",\n ...restArgs\n } = intersectionArguments ?? {};\n if (!element || once && isInView || typeof IntersectionObserver === \"undefined\")\n return;\n const activeIntersections = /* @__PURE__ */ new WeakMap();\n const onEnter = () => {\n if (to2) {\n api.start(to2);\n }\n setIsInView(true);\n const cleanup = () => {\n if (from) {\n api.start(from);\n }\n setIsInView(false);\n };\n return once ? void 0 : cleanup;\n };\n const handleIntersection = (entries) => {\n entries.forEach((entry) => {\n const onLeave = activeIntersections.get(entry.target);\n if (entry.isIntersecting === Boolean(onLeave)) {\n return;\n }\n if (entry.isIntersecting) {\n const newOnLeave = onEnter();\n if (is12.fun(newOnLeave)) {\n activeIntersections.set(entry.target, newOnLeave);\n } else {\n observer.unobserve(entry.target);\n }\n } else if (onLeave) {\n onLeave();\n activeIntersections.delete(entry.target);\n }\n });\n };\n const observer = new IntersectionObserver(handleIntersection, {\n root: root && root.current || void 0,\n threshold: typeof amount === \"number\" || Array.isArray(amount) ? amount : defaultThresholdOptions[amount],\n ...restArgs\n });\n observer.observe(element);\n return () => observer.unobserve(element);\n }, [intersectionArguments]);\n if (propsFn) {\n return [ref, springs];\n }\n return [ref, isInView];\n}\n\n// src/components/Spring.tsx\nfunction Spring({ children, ...props }) {\n return children(useSpring(props));\n}\n\n// src/components/Trail.tsx\nimport { is as is13 } from \"@react-spring/shared\";\nfunction Trail({\n items,\n children,\n ...props\n}) {\n const trails = useTrail(items.length, props);\n return items.map((item, index) => {\n const result = children(item, index);\n return is13.fun(result) ? result(trails[index]) : result;\n });\n}\n\n// src/components/Transition.tsx\nfunction Transition({\n items,\n children,\n ...props\n}) {\n return useTransition(items, props)(children);\n}\n\n// src/interpolate.ts\nimport { deprecateInterpolate as deprecateInterpolate2 } from \"@react-spring/shared\";\n\n// src/Interpolation.ts\nimport {\n is as is14,\n raf as raf5,\n each as each10,\n isEqual as isEqual2,\n toArray as toArray5,\n frameLoop as frameLoop3,\n getFluidValue as getFluidValue3,\n createInterpolator,\n Globals as G6,\n callFluidObservers as callFluidObservers3,\n addFluidObserver as addFluidObserver3,\n removeFluidObserver as removeFluidObserver2,\n hasFluidValue as hasFluidValue2\n} from \"@react-spring/shared\";\nimport {\n getAnimated as getAnimated3,\n setAnimated as setAnimated2,\n getAnimatedType as getAnimatedType2,\n getPayload as getPayload2\n} from \"@react-spring/animated\";\nvar Interpolation = class extends FrameValue {\n constructor(source, args) {\n super();\n this.source = source;\n /** Equals false when in the frameloop */\n this.idle = true;\n /** The inputs which are currently animating */\n this._active = /* @__PURE__ */ new Set();\n this.calc = createInterpolator(...args);\n const value = this._get();\n const nodeType = getAnimatedType2(value);\n setAnimated2(this, nodeType.create(value));\n }\n advance(_dt) {\n const value = this._get();\n const oldValue = this.get();\n if (!isEqual2(value, oldValue)) {\n getAnimated3(this).setValue(value);\n this._onChange(value, this.idle);\n }\n if (!this.idle && checkIdle(this._active)) {\n becomeIdle(this);\n }\n }\n _get() {\n const inputs = is14.arr(this.source) ? this.source.map(getFluidValue3) : toArray5(getFluidValue3(this.source));\n return this.calc(...inputs);\n }\n _start() {\n if (this.idle && !checkIdle(this._active)) {\n this.idle = false;\n each10(getPayload2(this), (node) => {\n node.done = false;\n });\n if (G6.skipAnimation) {\n raf5.batchedUpdates(() => this.advance());\n becomeIdle(this);\n } else {\n frameLoop3.start(this);\n }\n }\n }\n // Observe our sources only when we're observed.\n _attach() {\n let priority = 1;\n each10(toArray5(this.source), (source) => {\n if (hasFluidValue2(source)) {\n addFluidObserver3(source, this);\n }\n if (isFrameValue(source)) {\n if (!source.idle) {\n this._active.add(source);\n }\n priority = Math.max(priority, source.priority + 1);\n }\n });\n this.priority = priority;\n this._start();\n }\n // Stop observing our sources once we have no observers.\n _detach() {\n each10(toArray5(this.source), (source) => {\n if (hasFluidValue2(source)) {\n removeFluidObserver2(source, this);\n }\n });\n this._active.clear();\n becomeIdle(this);\n }\n /** @internal */\n eventObserved(event) {\n if (event.type == \"change\") {\n if (event.idle) {\n this.advance();\n } else {\n this._active.add(event.parent);\n this._start();\n }\n } else if (event.type == \"idle\") {\n this._active.delete(event.parent);\n } else if (event.type == \"priority\") {\n this.priority = toArray5(this.source).reduce(\n (highest, parent) => Math.max(highest, (isFrameValue(parent) ? parent.priority : 0) + 1),\n 0\n );\n }\n }\n};\nfunction isIdle(source) {\n return source.idle !== false;\n}\nfunction checkIdle(active) {\n return !active.size || Array.from(active).every(isIdle);\n}\nfunction becomeIdle(self) {\n if (!self.idle) {\n self.idle = true;\n each10(getPayload2(self), (node) => {\n node.done = true;\n });\n callFluidObservers3(self, {\n type: \"idle\",\n parent: self\n });\n }\n}\n\n// src/interpolate.ts\nvar to = (source, ...args) => new Interpolation(source, args);\nvar interpolate = (source, ...args) => (deprecateInterpolate2(), new Interpolation(source, args));\n\n// src/globals.ts\nimport {\n Globals,\n frameLoop as frameLoop4,\n createStringInterpolator\n} from \"@react-spring/shared\";\nGlobals.assign({\n createStringInterpolator,\n to: (source, args) => new Interpolation(source, args)\n});\nvar update = frameLoop4.advance;\n\n// src/index.ts\nimport {\n createInterpolator as createInterpolator2,\n useIsomorphicLayoutEffect as useIsomorphicLayoutEffect8,\n useReducedMotion,\n easings as easings2\n} from \"@react-spring/shared\";\nexport * from \"@react-spring/types\";\nexport {\n BailSignal,\n Controller,\n FrameValue,\n Globals,\n Interpolation,\n Spring,\n SpringContext,\n SpringRef,\n SpringValue,\n Trail,\n Transition,\n config,\n createInterpolator2 as createInterpolator,\n easings2 as easings,\n inferTo,\n interpolate,\n to,\n update,\n useChain,\n useInView,\n useIsomorphicLayoutEffect8 as useIsomorphicLayoutEffect,\n useReducedMotion,\n useResize,\n useScroll,\n useSpring,\n useSpringRef,\n useSpringValue,\n useSprings,\n useTrail,\n useTransition\n};\n//# sourceMappingURL=react-spring_core.modern.mjs.map","// src/index.ts\nimport { Globals } from \"@react-spring/core\";\nimport { unstable_batchedUpdates } from \"react-dom\";\nimport { createStringInterpolator, colors } from \"@react-spring/shared\";\nimport { createHost } from \"@react-spring/animated\";\n\n// src/applyAnimatedValues.ts\nvar isCustomPropRE = /^--/;\nfunction dangerousStyleValue(name, value) {\n if (value == null || typeof value === \"boolean\" || value === \"\")\n return \"\";\n if (typeof value === \"number\" && value !== 0 && !isCustomPropRE.test(name) && !(isUnitlessNumber.hasOwnProperty(name) && isUnitlessNumber[name]))\n return value + \"px\";\n return (\"\" + value).trim();\n}\nvar attributeCache = {};\nfunction applyAnimatedValues(instance, props) {\n if (!instance.nodeType || !instance.setAttribute) {\n return false;\n }\n const isFilterElement = instance.nodeName === \"filter\" || instance.parentNode && instance.parentNode.nodeName === \"filter\";\n const {\n className,\n style,\n children,\n scrollTop,\n scrollLeft,\n viewBox,\n ...attributes\n } = props;\n const values = Object.values(attributes);\n const names = Object.keys(attributes).map(\n (name) => isFilterElement || instance.hasAttribute(name) ? name : attributeCache[name] || (attributeCache[name] = name.replace(\n /([A-Z])/g,\n // Attributes are written in dash case\n (n) => \"-\" + n.toLowerCase()\n ))\n );\n if (children !== void 0) {\n instance.textContent = children;\n }\n for (const name in style) {\n if (style.hasOwnProperty(name)) {\n const value = dangerousStyleValue(name, style[name]);\n if (isCustomPropRE.test(name)) {\n instance.style.setProperty(name, value);\n } else {\n instance.style[name] = value;\n }\n }\n }\n names.forEach((name, i) => {\n instance.setAttribute(name, values[i]);\n });\n if (className !== void 0) {\n instance.className = className;\n }\n if (scrollTop !== void 0) {\n instance.scrollTop = scrollTop;\n }\n if (scrollLeft !== void 0) {\n instance.scrollLeft = scrollLeft;\n }\n if (viewBox !== void 0) {\n instance.setAttribute(\"viewBox\", viewBox);\n }\n}\nvar isUnitlessNumber = {\n animationIterationCount: true,\n borderImageOutset: true,\n borderImageSlice: true,\n borderImageWidth: true,\n boxFlex: true,\n boxFlexGroup: true,\n boxOrdinalGroup: true,\n columnCount: true,\n columns: true,\n flex: true,\n flexGrow: true,\n flexPositive: true,\n flexShrink: true,\n flexNegative: true,\n flexOrder: true,\n gridRow: true,\n gridRowEnd: true,\n gridRowSpan: true,\n gridRowStart: true,\n gridColumn: true,\n gridColumnEnd: true,\n gridColumnSpan: true,\n gridColumnStart: true,\n fontWeight: true,\n lineClamp: true,\n lineHeight: true,\n opacity: true,\n order: true,\n orphans: true,\n tabSize: true,\n widows: true,\n zIndex: true,\n zoom: true,\n // SVG-related properties\n fillOpacity: true,\n floodOpacity: true,\n stopOpacity: true,\n strokeDasharray: true,\n strokeDashoffset: true,\n strokeMiterlimit: true,\n strokeOpacity: true,\n strokeWidth: true\n};\nvar prefixKey = (prefix, key) => prefix + key.charAt(0).toUpperCase() + key.substring(1);\nvar prefixes = [\"Webkit\", \"Ms\", \"Moz\", \"O\"];\nisUnitlessNumber = Object.keys(isUnitlessNumber).reduce((acc, prop) => {\n prefixes.forEach((prefix) => acc[prefixKey(prefix, prop)] = acc[prop]);\n return acc;\n}, isUnitlessNumber);\n\n// src/AnimatedStyle.ts\nimport { AnimatedObject } from \"@react-spring/animated\";\nimport {\n is,\n each,\n toArray,\n eachProp,\n FluidValue,\n getFluidValue,\n callFluidObservers,\n hasFluidValue,\n addFluidObserver,\n removeFluidObserver\n} from \"@react-spring/shared\";\nvar domTransforms = /^(matrix|translate|scale|rotate|skew)/;\nvar pxTransforms = /^(translate)/;\nvar degTransforms = /^(rotate|skew)/;\nvar addUnit = (value, unit) => is.num(value) && value !== 0 ? value + unit : value;\nvar isValueIdentity = (value, id) => is.arr(value) ? value.every((v) => isValueIdentity(v, id)) : is.num(value) ? value === id : parseFloat(value) === id;\nvar AnimatedStyle = class extends AnimatedObject {\n constructor({ x, y, z, ...style }) {\n const inputs = [];\n const transforms = [];\n if (x || y || z) {\n inputs.push([x || 0, y || 0, z || 0]);\n transforms.push((xyz) => [\n `translate3d(${xyz.map((v) => addUnit(v, \"px\")).join(\",\")})`,\n // prettier-ignore\n isValueIdentity(xyz, 0)\n ]);\n }\n eachProp(style, (value, key) => {\n if (key === \"transform\") {\n inputs.push([value || \"\"]);\n transforms.push((transform) => [transform, transform === \"\"]);\n } else if (domTransforms.test(key)) {\n delete style[key];\n if (is.und(value))\n return;\n const unit = pxTransforms.test(key) ? \"px\" : degTransforms.test(key) ? \"deg\" : \"\";\n inputs.push(toArray(value));\n transforms.push(\n key === \"rotate3d\" ? ([x2, y2, z2, deg]) => [\n `rotate3d(${x2},${y2},${z2},${addUnit(deg, unit)})`,\n isValueIdentity(deg, 0)\n ] : (input) => [\n `${key}(${input.map((v) => addUnit(v, unit)).join(\",\")})`,\n isValueIdentity(input, key.startsWith(\"scale\") ? 1 : 0)\n ]\n );\n }\n });\n if (inputs.length) {\n style.transform = new FluidTransform(inputs, transforms);\n }\n super(style);\n }\n};\nvar FluidTransform = class extends FluidValue {\n constructor(inputs, transforms) {\n super();\n this.inputs = inputs;\n this.transforms = transforms;\n this._value = null;\n }\n get() {\n return this._value || (this._value = this._get());\n }\n _get() {\n let transform = \"\";\n let identity = true;\n each(this.inputs, (input, i) => {\n const arg1 = getFluidValue(input[0]);\n const [t, id] = this.transforms[i](\n is.arr(arg1) ? arg1 : input.map(getFluidValue)\n );\n transform += \" \" + t;\n identity = identity && id;\n });\n return identity ? \"none\" : transform;\n }\n // Start observing our inputs once we have an observer.\n observerAdded(count) {\n if (count == 1)\n each(\n this.inputs,\n (input) => each(\n input,\n (value) => hasFluidValue(value) && addFluidObserver(value, this)\n )\n );\n }\n // Stop observing our inputs once we have no observers.\n observerRemoved(count) {\n if (count == 0)\n each(\n this.inputs,\n (input) => each(\n input,\n (value) => hasFluidValue(value) && removeFluidObserver(value, this)\n )\n );\n }\n eventObserved(event) {\n if (event.type == \"change\") {\n this._value = null;\n }\n callFluidObservers(this, event);\n }\n};\n\n// src/primitives.ts\nvar primitives = [\n \"a\",\n \"abbr\",\n \"address\",\n \"area\",\n \"article\",\n \"aside\",\n \"audio\",\n \"b\",\n \"base\",\n \"bdi\",\n \"bdo\",\n \"big\",\n \"blockquote\",\n \"body\",\n \"br\",\n \"button\",\n \"canvas\",\n \"caption\",\n \"cite\",\n \"code\",\n \"col\",\n \"colgroup\",\n \"data\",\n \"datalist\",\n \"dd\",\n \"del\",\n \"details\",\n \"dfn\",\n \"dialog\",\n \"div\",\n \"dl\",\n \"dt\",\n \"em\",\n \"embed\",\n \"fieldset\",\n \"figcaption\",\n \"figure\",\n \"footer\",\n \"form\",\n \"h1\",\n \"h2\",\n \"h3\",\n \"h4\",\n \"h5\",\n \"h6\",\n \"head\",\n \"header\",\n \"hgroup\",\n \"hr\",\n \"html\",\n \"i\",\n \"iframe\",\n \"img\",\n \"input\",\n \"ins\",\n \"kbd\",\n \"keygen\",\n \"label\",\n \"legend\",\n \"li\",\n \"link\",\n \"main\",\n \"map\",\n \"mark\",\n \"menu\",\n \"menuitem\",\n \"meta\",\n \"meter\",\n \"nav\",\n \"noscript\",\n \"object\",\n \"ol\",\n \"optgroup\",\n \"option\",\n \"output\",\n \"p\",\n \"param\",\n \"picture\",\n \"pre\",\n \"progress\",\n \"q\",\n \"rp\",\n \"rt\",\n \"ruby\",\n \"s\",\n \"samp\",\n \"script\",\n \"section\",\n \"select\",\n \"small\",\n \"source\",\n \"span\",\n \"strong\",\n \"style\",\n \"sub\",\n \"summary\",\n \"sup\",\n \"table\",\n \"tbody\",\n \"td\",\n \"textarea\",\n \"tfoot\",\n \"th\",\n \"thead\",\n \"time\",\n \"title\",\n \"tr\",\n \"track\",\n \"u\",\n \"ul\",\n \"var\",\n \"video\",\n \"wbr\",\n // SVG\n \"circle\",\n \"clipPath\",\n \"defs\",\n \"ellipse\",\n \"foreignObject\",\n \"g\",\n \"image\",\n \"line\",\n \"linearGradient\",\n \"mask\",\n \"path\",\n \"pattern\",\n \"polygon\",\n \"polyline\",\n \"radialGradient\",\n \"rect\",\n \"stop\",\n \"svg\",\n \"text\",\n \"tspan\"\n];\n\n// src/index.ts\nexport * from \"@react-spring/core\";\nGlobals.assign({\n batchedUpdates: unstable_batchedUpdates,\n createStringInterpolator,\n colors\n});\nvar host = createHost(primitives, {\n applyAnimatedValues,\n createAnimatedStyle: (style) => new AnimatedStyle(style),\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n getComponentProps: ({ scrollTop, scrollLeft, ...props }) => props\n});\nvar animated = host.animated;\nexport {\n animated as a,\n animated\n};\n//# sourceMappingURL=react-spring_web.modern.mjs.map","import styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\n\nconst ContainerStyle = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-modal-container-gap);\n grid-template-rows: auto 1fr auto;\n height: calc(100% - var(--ddk-component-modal-content-padding) * 2);\n padding: var(--ddk-component-modal-content-padding);\n`;\n\ninterface ModalContentProps {\n children?: ReactNode;\n contain?: boolean;\n}\n\nexport const ModalContent = ({ children, contain = true }: ModalContentProps) =>\n contain ? <ContainerStyle>{children}</ContainerStyle> : children;\n","/** @jsxImportSource @emotion/react */\n\nimport { css } from \"@emotion/react\";\nimport styled from \"@emotion/styled\";\nimport { animated, useTransition } from \"@react-spring/web\";\nimport { ReactNode, Suspense } from \"react\";\nimport { createPortal } from \"react-dom\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { Container } from \"../../styles\";\nimport { ModalContent } from \"./modal-content\";\n\nexport type ModalMode = \"fullscreen\" | \"maximized\";\n\nconst modalStyles = (mode?: ModalMode, enableAnimation?: boolean) => css`\n align-items: center;\n background-color: var(--ddk-component-modal-shade-background-color);\n bottom: 0;\n display: flex;\n flex-direction: column;\n justify-content: center;\n left: 0;\n padding: ${mode === \"fullscreen\"\n ? \"var(--ddk-component-modal-padding-fullscreen)\"\n : \"var(--ddk-component-modal-padding-maximized)\"};\n position: fixed;\n max-width: var(--ddk-component-shell-max-width);\n max-height: var(--ddk-component-shell-max-height);\n right: 0;\n top: 0;\n gap: 32px;\n z-index: 1;\n\n &.fullscreen {\n padding: 0;\n }\n\n & .modal {\n animation: ${enableAnimation\n ? \"grow var(--ddk-component-modal-transition-duration) var(--ddk-component-modal-transition-timing-function)\"\n : \"none\"};\n background-color: var(--ddk-component-modal-background-color);\n border-radius: var(--ddk-component-modal-border-radius);\n display: flex;\n flex-direction: column;\n min-height: var(--ddk-component-modal-min-height);\n min-width: var(--ddk-component-modal-min-width);\n max-width: var(--ddk-component-modal-max-width);\n max-height: var(--ddk-component-modal-max-height);\n width: var(--ddk-component-modal-width);\n\n &.fullscreen {\n border-radius: 0;\n max-height: initial;\n height: var(--ddk-component-shell-max-height);\n max-width: initial;\n width: var(--ddk-component-shell-max-width);\n }\n\n &.maximized {\n height: 100%;\n max-width: initial;\n width: 100%;\n }\n }\n\n @keyframes grow {\n 0% {\n transform: scale(0.66);\n }\n 100% {\n transform: scale(1);\n }\n }\n`;\n\ninterface ModalContainerProps {\n mode?: ModalMode;\n}\n\nconst ModalContainer = styled(Container)<ModalContainerProps>`\n align-items: center;\n display: flex;\n flex-direction: column;\n justify-content: center;\n max-width: ${(props) =>\n props.mode === \"fullscreen\"\n ? \"var(--ddk-component-shell-max-width)\"\n : \"var(--ddk-component-modal-max-width)\"};\n /* height: ${(props) => props.mode === \"maximized\" && \"100%\"}; */\n`;\n\nexport interface ModalProps {\n children: ReactNode;\n closeOnShroudClick?: boolean;\n contain?: boolean;\n enableAnimation?: boolean;\n mode?: ModalMode;\n onClose?: () => void;\n onClosed?: () => void;\n show?: boolean;\n width?: number;\n height?: number;\n}\n\nexport const Modal = ({\n children,\n closeOnShroudClick = true,\n contain = true,\n enableAnimation,\n mode,\n onClose,\n onClosed,\n show,\n width,\n height,\n ...props\n}: ModalProps) => {\n const componentConfigurationContext = useComponentConfigurationContext();\n\n const enableAnimationValue =\n enableAnimation !== undefined\n ? enableAnimation\n : componentConfigurationContext.enableModalAnimation;\n\n mode = componentConfigurationContext.modalModeOverride ?? mode;\n\n const transition = useTransition(show, {\n initial: { opacity: 0 },\n from: { opacity: 0 },\n enter: { opacity: 1 },\n leave: { opacity: 0 },\n onDestroyed: onClosed,\n immediate: !enableAnimationValue,\n });\n\n return createPortal(\n transition(\n (style, item) =>\n item && (\n <animated.div\n css={modalStyles(mode, enableAnimationValue)}\n style={style}\n onPointerDown={() =>\n mode !== \"maximized\" && closeOnShroudClick && onClose?.()\n }\n >\n <ModalContainer\n {...props}\n contain={mode !== \"fullscreen\"}\n mode={mode}\n >\n <div\n className={`modal${\n mode === \"fullscreen\"\n ? \" fullscreen\"\n : mode === \"maximized\"\n ? \" maximized\"\n : \"\"\n }`}\n onPointerDown={(event) => event.stopPropagation()}\n style={{ width, height }}\n >\n <Suspense>\n <ModalContent contain={contain}>{children}</ModalContent>\n </Suspense>\n </div>\n </ModalContainer>\n </animated.div>\n )\n ),\n document.body\n );\n};\n","import styled from \"@emotion/styled\";\n\nexport const ModalContainer = styled.div`\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n overflow-x: hidden;\n gap: var(--ddk-component-base-modal-container-gap);\n height: 100%;\n`;\n","import styled from \"@emotion/styled\";\nimport {\n ErrorIconWithBackground,\n InformationIconWithBackground,\n InformationQuestionIconWithBackground,\n LoaderIconWithBackground,\n MessageInformationIconWithBackground,\n MessageQuestionIconWithBackground,\n SuccessIconWithBackground,\n} from \"@kosdev-code/kos-ddk-styles\";\nimport type { ReactNode } from \"react\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { BackButton } from \"../back-button\";\nimport {\n Content,\n Footer,\n Header,\n Modal,\n ModalContainer,\n type ModalProps,\n} from \"../modal\";\n\nconst WorkflowModalBase = styled(Modal)`\n --ddk-component-modal-min-height: var(\n --ddk-component-workflow-modal-min-height\n );\n`;\n\nconst WorkflowContent = styled(Content)`\n align-items: center;\n gap: 24px;\n`;\n\nexport type Status =\n | \"error\"\n | \"information-default\"\n | \"information\"\n | \"loading\"\n | \"question-default\"\n | \"question\"\n | \"success\";\n\nconst defaultIconStyle = {\n height: \"56px\",\n width: \"56px\",\n};\n\nconst RotationIcon = styled.div`\n display: flex;\n animation: rotation 2s infinite linear;\n @keyframes rotation {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n }\n`;\n\nconst getIcon = (status?: Status, iconStyle?: any) => {\n switch (status) {\n case \"error\":\n return <ErrorIconWithBackground style={iconStyle} />;\n case \"information-default\":\n return <InformationIconWithBackground style={iconStyle} />;\n case \"information\":\n return <MessageInformationIconWithBackground style={iconStyle} />;\n case \"loading\":\n return (\n <RotationIcon>\n <LoaderIconWithBackground style={iconStyle} />\n </RotationIcon>\n );\n case \"question-default\":\n return <InformationQuestionIconWithBackground style={iconStyle} />;\n case \"question\":\n return <MessageQuestionIconWithBackground style={iconStyle} />;\n case \"success\":\n return <SuccessIconWithBackground style={iconStyle} />;\n default:\n return undefined;\n }\n};\n\nexport interface WorkflowModalProps extends Omit<ModalProps, \"children\"> {\n closeButtonLabel?: string;\n footer?: ReactNode;\n iconStyle?: any;\n information?: ReactNode;\n showCloseButton?: boolean;\n status?: Status;\n title?: string;\n}\n\nexport const WorkflowModal = ({\n closeButtonLabel,\n footer,\n iconStyle = defaultIconStyle,\n information,\n onClose,\n show = true,\n showCloseButton = true,\n status,\n title,\n ...props\n}: WorkflowModalProps) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <WorkflowModalBase\n {...props}\n contain={componentModeOverride !== \"compact\"}\n show={show}\n onClose={onClose}\n >\n <ModalContainer>\n {((showCloseButton && !!onClose) || title) && (\n <Header\n closeButtonLabel={closeButtonLabel}\n CloseButton={\n componentModeOverride === \"compact\" ? BackButton : undefined\n }\n contain={componentModeOverride === \"compact\"}\n onClose={onClose}\n showCloseButton={showCloseButton}\n title={title}\n />\n )}\n\n <WorkflowContent contain={componentModeOverride === \"compact\"}>\n {getIcon(status, iconStyle)}\n {information}\n </WorkflowContent>\n\n <Footer>{footer}</Footer>\n </ModalContainer>\n </WorkflowModalBase>\n );\n};\n","import { useKosTranslation } from \"@kosdev-code/kos-ui-sdk\";\nimport {\n BodyLargeInformation,\n Button,\n HeadingMediumInformation,\n} from \"../../styles\";\nimport {\n WorkflowModal,\n type Status,\n type WorkflowModalProps,\n} from \"../workflow-modal\";\n\ninterface ConfirmationModalProps\n extends Omit<WorkflowModalProps, \"information\"> {\n cancelLabel?: string;\n confirmLabel?: string;\n heading?: string;\n body?: string;\n onCancel?: () => void;\n onClose?: () => void;\n onConfirm: () => void;\n status?: Status;\n}\n\nexport const ConfirmationModal = ({\n body,\n cancelLabel,\n confirmLabel,\n heading,\n onCancel,\n onClose,\n onConfirm,\n status,\n ...props\n}: ConfirmationModalProps) => (\n <WorkflowModal\n {...props}\n footer={\n <>\n {onCancel && <Button onPointerDown={onCancel}>{cancelLabel}</Button>}\n {onConfirm && <Button onPointerDown={onConfirm}>{confirmLabel}</Button>}\n </>\n }\n iconStyle={{\n height: \"68px\",\n width: \"68px\",\n }}\n information={\n <>\n {heading && (\n <HeadingMediumInformation>{heading}</HeadingMediumInformation>\n )}\n {body && <BodyLargeInformation>{body}</BodyLargeInformation>}\n </>\n }\n onClose={onClose}\n showCloseButton={!!onClose}\n status={status}\n />\n);\n\nexport const ConfirmationModalContainer = ({\n cancelLabel,\n confirmLabel,\n ...props\n}: ConfirmationModalProps) => {\n const { t } = useKosTranslation(\"common\", {\n keyPrefix: \"confirmation-modal\",\n });\n\n cancelLabel = cancelLabel ?? t(\"cancel\");\n confirmLabel = confirmLabel ?? t(\"confirm\");\n\n return (\n <ConfirmationModal\n cancelLabel={cancelLabel}\n confirmLabel={confirmLabel}\n {...props}\n />\n );\n};\n","import styled from \"@emotion/styled\";\nimport { FunctionComponent, useRef } from \"react\";\n// import { ErrorLabel } from \"../error-label\";\nimport { ChevronRightIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport { useComponentConfigurationContext } from \"../../core\";\n\ninterface CardProps {\n backgroundColor?: string;\n disabled?: boolean;\n}\n\nconst Indicator = styled.div<CardProps>`\n background-color: ${(props) =>\n props.backgroundColor && props.backgroundColor};\n\n border-bottom-left-radius: 4px;\n border-top-left-radius: 4px;\n bottom: 0;\n height: 100%;\n left: 0;\n position: absolute;\n top: 0;\n width: 4px;\n z-index: 1;\n`;\n\nexport const DashboardCardContainer = styled.div<CardProps>`\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-generic-color-grey-50, #888888)\"\n : props.backgroundColor\n ? props.backgroundColor\n : \"var(--ddk-generic-color-white, #ffffff)\"};\n\n border-radius: 8px;\n border: 1px solid var(--ddk-generic-color-grey-20, #dfdede);\n box-sizing: border-box;\n\n color: ${(props) =>\n props.color ?? props.backgroundColor === \"black\"\n ? \"var(--ddk-generic-color-white, #ffffff)\"\n : \"var(--Grey-100, #171717)\"};\n\n cursor: pointer;\n display: grid;\n flex-direction: column;\n gap: 4px;\n grid-template-areas: var(--ddk-component-dashboard-card-layout);\n grid-template-columns: var(--ddk-component-dashboard-card-layout-columns);\n grid-template-rows: var(--ddk-component-dashboard-card-layout-rows);\n height: var(--ddk-component-dashboard-card-height);\n overflow: visible;\n padding: var(--ddk-component-dashboard-card-padding);\n position: relative;\n user-select: none;\n flex: 1 1 var(--ddk-component-dashboard-card-large-width);\n min-width: var(--ddk-component-dashboard-card-min-width, auto);\n max-width: var(--ddk-component-dashboard-card-large-width);\n max-height: var(--ddk-component-dashboard-card-max-height);\n`;\n\nexport const CardAvatar = styled.div<CardProps>`\n align-items: center;\n align-self: center;\n background-color: var(--ddk-component-dashboard-card-avatar-background-color);\n border: var(--ddk-component-dashboard-card-avatar-border);\n\n color: ${(props) =>\n props.backgroundColor === \"black\"\n ? \"var(--ddk-generic-color-white, #ffffff)\"\n : \"var(--Grey-100, #171717)\"};\n\n display: flex;\n font-size: var(--ddk-component-dashboard-card-avatar-font-size);\n font-weight: var(--ddk-component-dashboard-card-avatar-font-weight, 700);\n grid-area: avatar;\n height: var(--ddk-component-dashboard-card-avatar-height);\n justify-content: center;\n justify-self: center;\n padding: var(--ddk-component-dashboard-card-avatar-padding);\n width: var(--ddk-component-dashboard-card-avatar-width);\n z-index: 1;\n`;\n\nexport const CardTitle = styled.div<CardProps>`\n align-items: center;\n z-index: 1;\n grid-area: title;\n\n display: flex;\n font-size: var(--ddk-component-dashboard-card-title-font-size);\n font-style: normal;\n font-weight: 600;\n gap: 12px;\n\n letter-spacing: 0.56px;\n\n max-height: 36px;\n`;\n\nexport const CardBody = styled.div`\n align-items: center;\n grid-area: body;\n display: flex;\n gap: 8px;\n min-height: 0;\n flex: 1;\n`;\n\nexport const CardFooter = styled.div`\n align-items: center;\n grid-area: footer;\n display: flex;\n font-size: 14px;\n flex-wrap: wrap;\n`;\n\nexport const CardErrors = styled.div`\n display: flex;\n grid-area: errors;\n justify-content: center;\n align-items: center;\n width: 100%;\n z-index: 1;\n position: relative;\n`;\n\nexport const CardNav = styled(ChevronRightIcon)`\n align-self: center;\n grid-area: nav;\n justify-self: flex-end;\n z-index: 1;\n`;\n\nconst DashboardCardHeader = styled.div<CardProps>`\n border-radius: 8px 8px 0 0;\n height: 30px;\n width: 100%;\n position: absolute;\n top: 0;\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-generic-color-grey-50, #888888)\"\n : props.backgroundColor\n ? props.backgroundColor\n : \"var(--ddk-component-dashboard-card-header-background-color)\"};\n`;\n\ninterface Props {\n avatar?: React.ReactNode;\n body?: React.ReactNode;\n cardId: string;\n color?: string;\n headerBackgroundColor?: string;\n backgroundColor?: string;\n errors?: number;\n footer?: React.ReactNode;\n disabled?: boolean;\n indicatorColor?: string;\n onCardSelect?: (cardId: string) => void;\n showNavIcon?: boolean;\n title?: React.ReactNode;\n}\n\nconst DashboardCard: FunctionComponent<Props> = ({\n avatar,\n body,\n cardId,\n color,\n headerBackgroundColor,\n backgroundColor,\n errors: _errors,\n footer,\n disabled,\n indicatorColor,\n onCardSelect,\n showNavIcon,\n title,\n}) => {\n if (!headerBackgroundColor) headerBackgroundColor = backgroundColor;\n\n const pointerIdRef = useRef(null);\n\n const handlePointerDown = (event) => {\n pointerIdRef.current = event.pointerId;\n };\n\n const handlePointerUp = (event) => {\n if (pointerIdRef.current === event.pointerId) {\n onCardSelect?.(cardId);\n }\n\n pointerIdRef.current = null;\n };\n\n const { componentModeOverride } = useComponentConfigurationContext();\n const isCompact = componentModeOverride === \"compact\";\n\n return (\n <DashboardCardContainer\n color={color}\n backgroundColor={backgroundColor}\n onPointerDown={handlePointerDown}\n onPointerUp={handlePointerUp}\n disabled={disabled}\n >\n {isCompact && indicatorColor && (\n <Indicator backgroundColor={indicatorColor} />\n )}\n <DashboardCardHeader\n backgroundColor={headerBackgroundColor}\n disabled={disabled}\n ></DashboardCardHeader>\n {/*\n // Enabling the code below adds a red error notification counter...\n {!!errors && (\n <CardErrors>\n <ErrorLabel count={errors} />\n </CardErrors>\n )} */}\n {!!avatar && (\n <CardAvatar backgroundColor={backgroundColor}>{avatar}</CardAvatar>\n )}\n {title && (\n <CardTitle backgroundColor={backgroundColor}>{title}</CardTitle>\n )}\n <CardBody>{body}</CardBody>\n {componentModeOverride === \"compact\" && !!showNavIcon && <CardNav />}\n {!!footer && <CardFooter>{footer}</CardFooter>}\n </DashboardCardContainer>\n );\n};\n\nexport const AgitatorDashboardCard: FunctionComponent<Omit<Props, \"width\">> = (\n props\n) => <DashboardCard {...props} />;\n\nexport const HolderDashboardCard: FunctionComponent<Omit<Props, \"width\">> = (\n props\n) => <DashboardCard {...props} />;\n","import styled from \"@emotion/styled\";\nimport { useSpring, animated, useTransition, config } from \"@react-spring/web\";\nimport { useGesture } from \"@use-gesture/react\";\nimport {\n ComponentType,\n ReactNode,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { useComponentConfigurationContext } from \"../../core\";\n\nconst MOVEMENT_THRESHOLD = 10;\n\nconst Container = styled(animated.div)`\n overflow: hidden;\n position: relative;\n touch-action: none;\n user-select: none;\n width: 100%;\n`;\n\nconst Item = styled(animated.div)`\n align-items: center;\n display: flex;\n justify-content: center;\n position: absolute;\n width: 100%;\n`;\n\nexport interface DialItem<T = number | string> {\n id: T;\n label: string;\n [key: string]: unknown;\n}\n\nexport interface DialItemRendererProps<T> {\n children?: ReactNode;\n item: DialItem<T>;\n selected?: boolean;\n}\n\nexport type DialItemRenderer<T> = ComponentType<DialItemRendererProps<T>>;\n\nexport interface DialProps<T> {\n className?: string;\n enableAnimation?: boolean;\n itemRenderer?: DialItemRenderer<T>;\n items?: DialItem<T>[];\n itemSize?: number;\n loop?: boolean;\n numberOfVisibleItems?: number;\n offset?: boolean;\n selectedItemId?: T;\n selectedItemOffset?: number;\n onChange?: (item: DialItem<T>) => void;\n}\n\nconst modulo = (value: number, modulus: number) =>\n ((value % modulus) + modulus) % modulus;\n\nexport const Dial = <T,>({\n className,\n enableAnimation,\n itemRenderer: ItemRenderer,\n items = [],\n itemSize = 20,\n loop,\n numberOfVisibleItems = 13,\n offset = false,\n selectedItemId,\n selectedItemOffset,\n onChange,\n}: DialProps<T>) => {\n const componentConfigurationContext = useComponentConfigurationContext();\n\n const enableAnimationValue =\n enableAnimation !== undefined\n ? enableAnimation\n : componentConfigurationContext.enableDialAnimation;\n\n const short = items.length <= numberOfVisibleItems;\n const loopValue = loop !== undefined ? loop : short ? false : true;\n\n const selectedItemOffsetValue =\n selectedItemOffset ?? Math.floor(numberOfVisibleItems / 2);\n\n const visibleSize =\n (offset ? numberOfVisibleItems - 1 : numberOfVisibleItems) * itemSize;\n\n const dragged = useRef(false);\n const pointerDown = useRef(false);\n\n // selected item index...\n const selectedItemIndex = useMemo(() => {\n const index = items.findIndex((item) => item.id === selectedItemId);\n if (index === undefined || index === -1) return 0;\n return index;\n }, [items, selectedItemId]);\n\n // current index...\n const [currentIndex, setCurrentIndex] = useState(\n selectedItemIndex - selectedItemOffsetValue\n );\n\n const getItem = (index: number) =>\n items[modulo(index + selectedItemOffsetValue, items.length)];\n\n const getScrollTarget = useCallback(\n (index: number) => -index * itemSize,\n [itemSize]\n );\n\n const clampScrollOffset = (scrollOffset: number) => {\n if (loopValue === false) {\n const min = (items.length - selectedItemOffsetValue - 1) * itemSize;\n const max = selectedItemOffsetValue * itemSize;\n\n if (scrollOffset < -max) {\n return -max;\n } else if (scrollOffset > min) {\n return min;\n }\n }\n\n return scrollOffset;\n };\n\n // The scroll offset is the position of the list...\n const scrollOffsetRef = useRef(0);\n\n // The spring is what controls the movement of the list...\n const [{ value }, api] = useSpring(\n {\n to: { value: -selectedItemIndex * itemSize },\n config: config.default,\n immediate: true,\n },\n [selectedItemIndex, itemSize]\n );\n\n // visible items...\n const visibleItems = useMemo(() => {\n const visibleItems: {\n index: number;\n position: number;\n data: DialItem<T>;\n }[] = [];\n\n for (let i = 0; i < numberOfVisibleItems; ++i) {\n // When loop is enabled, the offsetIndex is a wrapped index to retrieve\n // the looped item's value...\n const offsetIndex = loopValue\n ? modulo(currentIndex + i, items.length)\n : currentIndex + i;\n\n // If loop is disabled, we limit infinite indexing...\n if (\n (loopValue === false && offsetIndex < 0) ||\n offsetIndex >= items.length\n )\n continue;\n\n visibleItems.push({\n index: currentIndex + i, // This represents the \"selected\" index, plus the visible item's offset index...\n position:\n (currentIndex + i) * itemSize + (offset ? -itemSize * 0.5 : 0), // This offsets the item by its visible offset index...\n data: items[offsetIndex],\n });\n }\n\n return visibleItems;\n }, [currentIndex, items, itemSize, loopValue, numberOfVisibleItems, offset]);\n\n // elements...\n const transitions = useTransition(visibleItems, {\n // Set the item's key to its index...\n keys: (item) => item.index,\n\n // Animation values are not actually utilized for the transition phase, but\n // exist as a means to delay the leave transition method so items remain on\n // screen until scrolling has settled...\n from: { value: 0 },\n enter: { value: 1 },\n leave: { value: 0 },\n config: config.gentle,\n });\n\n // drag...\n const bind = useGesture({\n onPointerDown: () => {\n pointerDown.current = true;\n },\n onPointerUp: () => {\n pointerDown.current = false;\n },\n onDragStart: () => {\n dragged.current = false;\n // Reset the scroll offset based on the current index position...\n scrollOffsetRef.current = currentIndex * itemSize;\n },\n onDrag: ({ delta: [, dy], down, movement: [mx, my] }) => {\n // If we're not dragging, don't do anything...\n if (!down) return;\n\n if (\n Math.abs(mx) > MOVEMENT_THRESHOLD ||\n Math.abs(my) > MOVEMENT_THRESHOLD\n ) {\n dragged.current = true;\n }\n\n scrollOffsetRef.current = clampScrollOffset(scrollOffsetRef.current - dy);\n\n const nextIndex = Math.floor(scrollOffsetRef.current / itemSize);\n\n if (nextIndex !== currentIndex) {\n setCurrentIndex(nextIndex);\n onChange?.(getItem(nextIndex));\n\n // Configure the scroll spring to have stiff movement...\n api.start({\n value: getScrollTarget(nextIndex),\n config: config.stiff,\n immediate: !enableAnimationValue,\n });\n }\n },\n onDragEnd: ({\n velocity: [, vy],\n direction: [, dy],\n movement: [mx, my],\n }) => {\n // If we haven't dragged enough, don't do anything...\n if (\n Math.abs(mx) < MOVEMENT_THRESHOLD &&\n Math.abs(my) < MOVEMENT_THRESHOLD\n ) {\n return;\n }\n\n // Calculate a gesture throw distance... It's not very far to improve stability...\n scrollOffsetRef.current = clampScrollOffset(\n scrollOffsetRef.current - vy * dy * 10\n );\n\n const nextIndex = Math.floor(scrollOffsetRef.current / itemSize);\n\n if (nextIndex !== currentIndex) {\n setCurrentIndex(nextIndex);\n onChange?.(getItem(nextIndex));\n\n // Configure the scroll spring to have more inertia...\n api.start({\n value: getScrollTarget(nextIndex),\n config: config.slow,\n immediate: !enableAnimationValue,\n });\n }\n },\n });\n\n useEffect(() => {\n const index = selectedItemIndex - selectedItemOffsetValue;\n setCurrentIndex(index);\n api.start({\n value: getScrollTarget(index),\n config: config.default,\n immediate: true,\n });\n }, [\n api,\n getScrollTarget,\n itemSize,\n selectedItemIndex,\n selectedItemOffsetValue,\n ]);\n\n return (\n <Container\n {...bind()}\n className={className}\n style={{ height: visibleSize }}\n >\n {transitions((_style, item) => (\n <Item\n style={{\n height: itemSize,\n // Position the item based on the global scroll value and the item's position...\n y: value.to((value) => value + item.position),\n }}\n onPointerUp={() => {\n // Set the index to the selected item...\n if (pointerDown.current && !dragged.current) {\n const index = item.index - selectedItemOffsetValue;\n setCurrentIndex(index);\n onChange?.(getItem(index));\n api.start({\n value: getScrollTarget(index),\n config: config.stiff,\n immediate: !enableAnimationValue,\n });\n }\n }}\n >\n {ItemRenderer ? (\n <ItemRenderer\n item={item.data}\n selected={item.index === currentIndex + selectedItemOffsetValue}\n >\n {item.data.label}\n </ItemRenderer>\n ) : (\n item.data.label\n )}\n </Item>\n ))}\n </Container>\n );\n};\n","import { DropdownIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport { ActionItemButton, ActionItemButtonProps } from \"../../styles\";\n\nexport const Dropdown = ({\n children,\n Icon,\n ...props\n}: ActionItemButtonProps) => (\n <ActionItemButton {...props}>\n {children || <span></span>}\n {Icon ? <Icon /> : <DropdownIcon />}\n </ActionItemButton>\n);\n","import { css } from \"@emotion/react\";\nimport styled from \"@emotion/styled\";\nimport { CloseIcon, ErrorIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { Button } from \"../../styles\";\n\ninterface Props {\n heading: string;\n message?: string;\n onPointerDown?: () => void;\n}\n\nconst ErrorHeader = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n`;\n\nconst ErrorTitle = styled.p`\n font-size: var(--ddk-component-failure-card-font-size);\n font-weight: var(--ddk-component-failure-card-font-weight);\n letter-spacing: 0.44px;\n color: var(--ddk-component-failure-card-color);\n margin: 0;\n`;\n\nconst errorIcon = css`\n box-sizing: border-box;\n border-radius: 50px;\n background-color: var(--ddk-component-failure-card-background-color-red);\n color: var(--ddk-component-failure-card-icon-color);\n width: var(--ddk-component-failure-card-icon-size);\n height: var(--ddk-component-failure-card-icon-size);\n padding: var(--ddk-component-failure-card-icon-padding);\n`;\n\nconst ErrorTitleHead = styled.div`\n display: flex;\n align-items: center;\n gap: var(--ddk-component-failure-card-icon-gap);\n`;\n\nconst errorCloseIcon = css`\n width: 40px;\n height: 40px;\n background-color: transparent;\n color: var(--ddk-component-failure-card-color);\n`;\n\nconst ErrorBody = styled.div`\n border-top: 1px solid var(--ddk-component-failure-card-border-color);\n padding: var(--ddk-component-failure-card-padding);\n width: 100%;\n\n p {\n font-size: var(--ddk-component-failure-card-subtext-font-size);\n font-weight: var(--ddk-component-failure-card-font-weight);\n color: var(--ddk-component-failure-card-color);\n margin: 0;\n }\n`;\n\nexport const FailureCard = ({ heading, message, onPointerDown }: Props) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n const isCompact = componentModeOverride === \"compact\";\n\n return (\n <>\n <ErrorHeader>\n <ErrorTitleHead>\n <ErrorIcon css={errorIcon} />\n <ErrorTitle>{heading}</ErrorTitle>\n </ErrorTitleHead>\n {isCompact ? null : (\n <CloseIcon css={errorCloseIcon} onPointerDown={onPointerDown} />\n )}\n </ErrorHeader>\n {message && (\n <ErrorBody>\n <p>{message}</p>\n </ErrorBody>\n )}\n {isCompact && (\n <Button mode=\"primary\" onPointerDown={onPointerDown}>\n Close\n </Button>\n )}\n </>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { kosComponent } from \"@kosdev-code/kos-ui-sdk\";\nimport { ReactNode, type ElementType } from \"react\";\n\nexport interface TableData {\n [key: string]: any;\n}\n\ntype Mode = \"standard\" | \"info\";\n\nconst TableStyle = styled.div<{ $tableLayout?: \"auto\" | \"fixed\" }>`\n background-color: var(--ddk-component-table-background-color);\n border-radius: var(--ddk-component-table-border-radius);\n border-color: var(--ddk-component-table-border-color);\n border-style: var(--ddk-component-table-border-style);\n border-width: var(--ddk-component-table-border-width);\n overflow: hidden;\n box-sizing: border-box;\n width: 100%;\n\n & table {\n overflow: hidden;\n border-collapse: collapse;\n border-radius: var(--ddk-component-table-border-radius);\n border-spacing: 0;\n width: 100%;\n table-layout: ${(props) => props.$tableLayout || \"auto\"};\n\n & tr {\n border-top: var(--ddk-component-table-border-width)\n var(--ddk-component-table-border-style)\n var(--ddk-component-table-border-color);\n vertical-align: top;\n\n &.no-heading:first-of-type {\n border-top: none;\n }\n }\n\n & .heading {\n background-color: var(--ddk-component-table-heading-background-color);\n height: var(--ddk-component-table-heading-height);\n\n &:first-of-type {\n border-top: none;\n }\n\n & th {\n color: var(--ddk-component-table-heading-color);\n font-size: var(--ddk-component-table-heading-font-size);\n font-weight: var(--ddk-component-table-heading-font-weight);\n padding: var(--ddk-component-table-heading-padding);\n text-align: var(--ddk-component-table-heading-text-align);\n }\n }\n\n & .headers {\n & th {\n border-top: var(--ddk-component-table-border-width)\n var(--ddk-component-table-border-style)\n var(--ddk-component-table-border-color);\n color: var(--ddk-component-table-header-color);\n font-size: var(--ddk-component-table-header-font-size);\n font-weight: var(--ddk-component-table-header-font-weight);\n padding: var(--ddk-component-table-header-padding);\n text-align: var(--ddk-component-table-header-text-align);\n box-sizing: border-box;\n\n ${(props) =>\n props.$tableLayout === \"fixed\" &&\n `\n &:last-child {\n text-align: right;\n padding-right: var(--ddk-component-table-header-padding);\n }\n `}\n }\n\n &.no-heading {\n & th {\n border-top: none;\n }\n }\n }\n\n & .data {\n & td {\n padding: var(--ddk-component-table-data-padding);\n box-sizing: border-box;\n\n ${(props) =>\n props.$tableLayout === \"fixed\" &&\n `\n &:last-child {\n text-align: right;\n padding-right: var(--ddk-component-table-data-padding);\n }\n `}\n }\n }\n }\n\n // table-info...\n &.info {\n background-color: var(--ddk-component-table-info-background-color);\n border-radius: var(--ddk-component-table-info-border-radius);\n\n & table {\n overflow: hidden;\n border-radius: var(--ddk-component-table-border-radius);\n\n & .heading {\n background-color: var(\n --ddk-component-table-info-heading-background-color\n );\n }\n\n & .headers {\n & th {\n border-top: var(--ddk-component-table-info-border-width)\n var(--ddk-component-table-info-border-style)\n var(--ddk-component-table-info-border-color);\n }\n\n &.indent {\n & th {\n padding: var(--ddk-component-table-info-data-indent-padding);\n }\n }\n }\n\n & .data {\n &.indent {\n & td {\n padding: var(--ddk-component-table-info-data-indent-padding);\n }\n }\n }\n }\n }\n\n & .content {\n box-sizing: border-box;\n padding: var(--ddk-component-table-content-padding);\n }\n`;\n\nexport const getItemData = (item: unknown, key: string): ReactNode =>\n key.split(\".\").reduce((o, i) => o?.[i], item) as ReactNode;\n\nexport interface CellRendererProps {\n item: TableData;\n valueKey: string;\n}\n\nconst DefaultCellRenderer = ({ item, valueKey }: CellRendererProps) =>\n getItemData(item, valueKey);\n\nexport interface RowRendererProps {\n CellRenderer: ElementType;\n dataKeys: string[];\n item: TableData;\n}\n\nconst DefaultRowRenderer = ({\n CellRenderer = DefaultCellRenderer,\n dataKeys,\n item,\n}: RowRendererProps) =>\n dataKeys?.map((key, index) => (\n <td key={index}>\n <CellRenderer key={index} item={item} valueKey={key} />\n </td>\n ));\n\nexport interface TableProps {\n CellRenderer?: ElementType;\n children?: ReactNode;\n className?: string;\n data: TableData[];\n dataKeys: string[];\n headers?: ReactNode[];\n heading?: ReactNode;\n mode?: Mode;\n RowRenderer?: ElementType;\n tableLayout?: \"auto\" | \"fixed\";\n}\n\nexport const Table = kosComponent(\n ({\n CellRenderer = DefaultCellRenderer,\n children,\n className,\n data,\n dataKeys,\n headers,\n heading,\n mode = \"standard\",\n RowRenderer = DefaultRowRenderer,\n tableLayout,\n }: TableProps) => (\n <TableStyle className={className + ` ${mode}`} $tableLayout={tableLayout}>\n <table>\n <thead>\n {heading && (\n <tr className=\"heading\">\n <th colSpan={headers?.length ?? dataKeys?.length}>{heading}</th>\n </tr>\n )}\n\n {headers && (\n <tr\n className={\n \"headers\" +\n (mode === \"info\" && heading ? \" indent\" : \"\") +\n (heading ? \"\" : \" no-heading\")\n }\n >\n {headers?.map((header, index) => (\n <th key={index}>{header}</th>\n ))}\n </tr>\n )}\n </thead>\n\n <tbody>\n {data?.map((item, index) => (\n <tr\n key={index}\n className={`\n data\n ${mode === \"info\" && heading ? \" indent\" : \"\"}\n ${!heading ? \" no-heading\" : \"\"}\n `}\n >\n <RowRenderer\n CellRenderer={CellRenderer}\n dataKeys={dataKeys}\n item={item}\n />\n </tr>\n ))}\n </tbody>\n </table>\n {children && <div className=\"content\">{children}</div>}\n </TableStyle>\n )\n);\n","import { Table, type TableProps } from \"../table\";\n\nexport const InfoTable = (props: TableProps) => (\n <Table {...props} mode=\"info\" />\n);\n","import styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\nimport { InfoTable } from \"../../info-table\";\n\ninterface TableData {\n [key: string]: ReactNode;\n}\n\ninterface FrameBodyProps {\n keyList: string[];\n tableHead?: ReactNode;\n tableData: TableData[];\n tableHeaderList?: string[];\n tableLayout?: \"auto\" | \"fixed\";\n}\n\nconst FrameBodyContainer = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n padding: var(--ddk-component-frame-body-padding);\n width: 100%;\n box-sizing: border-box;\n`;\n\nexport const FrameBody = ({\n tableHead,\n tableData,\n keyList,\n tableHeaderList,\n tableLayout,\n}: FrameBodyProps) => (\n <FrameBodyContainer>\n <InfoTable\n heading={tableHead}\n dataKeys={keyList}\n data={tableData}\n headers={tableHeaderList}\n tableLayout={tableLayout}\n />\n </FrameBodyContainer>\n);\n","import styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\nimport { InfoCardHead } from \"../../../styles\";\n\nconst FrameContainerBlock = styled.div`\n box-sizing: var(--ddk-component-frame-container-box-sizing);\n border: var(--ddk-component-frame-container-border);\n border-radius: var(--ddk-component-frame-container-border-radius);\n background-color: var(--ddk-component-frame-container-background-color);\n overflow: hidden;\n`;\n\ninterface FrameContainerProps {\n name?: ReactNode;\n children: ReactNode;\n}\n\nconst InfoCardHeadStyle = styled(InfoCardHead)`\n box-sizing: border-box;\n padding: var(--ddk-component-frame-container-card-padding);\n max-height: 48px;\n`;\n\nexport const FrameContainer = ({ name, children }: FrameContainerProps) => (\n <FrameContainerBlock>\n <InfoCardHeadStyle>{name}</InfoCardHeadStyle>\n {children}\n </FrameContainerBlock>\n);\n","export function formatBytes(bytes, decimals = 2, space = true) {\n if (!+bytes) return \"0 Bytes\";\n\n const k = 1024;\n const dm = decimals < 0 ? 0 : decimals;\n const sizes = [\"Bytes\", \"KB\", \"MB\", \"GB\", \"TB\", \"PB\", \"EB\", \"ZB\", \"YB\"];\n\n const i = Math.floor(Math.log(bytes) / Math.log(k));\n\n return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))}${\n i === 0 ? \" \" : space ? \" \" : \"\"\n }${sizes[i]}`;\n}\n","export const getFillColor = (value: number) =>\n value <= 5\n ? \"var(--ddk-semantic-color-system-red)\"\n : value <= 20\n ? \"var(--ddk-semantic-color-system-orange)\"\n : \"var(--ddk-semantic-color-system-green)\";\n","import { useEffect, useState } from \"react\";\n\nexport interface KeyboardToggleProps<T> {\n defaultValue: T;\n key?: string;\n modifiers?: {\n altKey?: boolean;\n ctrlKey?: boolean;\n shiftKey?: boolean;\n };\n values: T[];\n}\n\nexport const useKeyboardToggle = <T>({\n defaultValue,\n key,\n modifiers,\n values,\n}: KeyboardToggleProps<T>) => {\n const [index, setIndex] = useState(values.indexOf(defaultValue));\n\n useEffect(() => {\n const keyDownHandler = (event: KeyboardEvent) => {\n const isKeyMatch = event.key === key;\n\n // prettier-ignore\n const isModifiersMatch =\n modifiers &&\n (modifiers.altKey === undefined || event.altKey === modifiers.altKey) &&\n (modifiers.ctrlKey === undefined || event.ctrlKey === modifiers.ctrlKey) &&\n (modifiers.shiftKey === undefined || event.shiftKey === modifiers.shiftKey);\n\n if (isKeyMatch && isModifiersMatch) setIndex((index + 1) % values.length);\n };\n\n window.addEventListener(\"keydown\", keyDownHandler);\n\n return () => {\n window.removeEventListener(\"keydown\", keyDownHandler);\n };\n }, [key, modifiers, values, index]);\n\n return values[index];\n};\n","import styled from \"@emotion/styled\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport {\n BodySmall,\n BodySmallInformation,\n Label,\n LabelInformation,\n} from \"../../styles\";\nimport { getFillColor } from \"../../tools\";\n\n// Function to determine the fill color of each bar\nconst getBarFillColor = (\n barIndex: number,\n value: number,\n size: \"small\" | \"large\"\n) => {\n const barCount = size === \"small\" ? 5 : 10;\n const barPercentage = 100 / barCount;\n const filledBars = Math.floor(value / barPercentage);\n const partiallyFilledPercentage = (value % barPercentage) * barCount; // Convert to percentage\n const fillColor = getFillColor(value);\n\n if (barIndex < filledBars) {\n return fillColor; // Fully filled bars\n } else if (barIndex === filledBars && partiallyFilledPercentage > 0) {\n // Apply linear-gradient for partially filled bar\n return `linear-gradient(to right, ${fillColor} ${partiallyFilledPercentage}%, #dfdede ${partiallyFilledPercentage}%)`;\n }\n return \"#dfdede\"; // Unfilled bars\n};\n\nconst FuelGaugeContainer = styled.div`\n display: flex;\n flex-direction: var(--ddk-component-fuel-guage-container-direction);\n gap: var(--ddk-component-fuel-guage-container-gap);\n width: 100%;\n`;\n\nconst FuelBarContainer = styled.div`\n display: flex;\n gap: var(--ddk-component-fuel-guage-bar-container-gap);\n`;\n\nconst FuelBar = styled.div<{ background: string; size: \"small\" | \"large\" }>`\n background: ${(props) => props.background};\n border-radius: var(--ddk-component-fuel-gauge-bar-border-radius);\n height: ${(props) =>\n props.size === \"small\"\n ? \"var(--ddk-component-fuel-gauge-bar-height-small)\"\n : \"var(--ddk-component-fuel-gauge-bar-height-large)\"};\n width: 100%;\n`;\n\nconst FillContainer = styled.div`\n display: flex;\n justify-content: space-between;\n`;\n\ninterface Props {\n color?: string;\n size: \"small\" | \"large\";\n value: number;\n showBarsOverride?: boolean;\n subtext?: string;\n subtextColor?: string;\n}\nexport const FuelGauge: React.FunctionComponent<Props> = ({\n color,\n size = \"small\",\n value,\n showBarsOverride = false,\n subtext,\n subtextColor,\n}) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n const isCompact = componentModeOverride === \"compact\";\n\n const showBars = componentModeOverride === \"standard\" || showBarsOverride;\n const bars = size === \"small\" ? 5 : 10;\n\n const FillText = size === \"small\" ? BodySmall : Label;\n const FillSubtext =\n size === \"small\" ? BodySmallInformation : LabelInformation;\n\n subtextColor = subtextColor ?? color;\n\n return (\n <FuelGaugeContainer>\n <FillContainer>\n <FillText\n style={{\n color: color ?? isCompact ? getFillColor(value) : undefined,\n }}\n >\n {value}%\n </FillText>\n {isCompact && subtext && (\n <FillSubtext style={{ color: subtextColor }}>{subtext}</FillSubtext>\n )}\n </FillContainer>\n {showBars && (\n <FuelBarContainer>\n {[...Array(bars)].map((_, i) => (\n <FuelBar\n size={size}\n key={i}\n background={getBarFillColor(i, value, size)}\n ></FuelBar>\n ))}\n </FuelBarContainer>\n )}\n </FuelGaugeContainer>\n );\n};\n","/** @jsxImportSource @emotion/react */\n\nimport { css } from \"@emotion/react\";\nimport { animated, useTransition } from \"@react-spring/web\";\nimport { ReactNode } from \"react\";\nimport { createPortal } from \"react-dom\";\nimport { ModalContent } from \"../modal/modal-content\";\n\nconst fullScreenModalStyles = css`\n display: flex;\n background-color: var(--ddk-component-modal-shade-background-color);\n flex-direction: column;\n justify-content: center;\n align-items: center;\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n\n & > .modal {\n animation: grow var(--ddk-component-fullScreenModal-transition-duration)\n var(--ddk-component-fullScreenModal-transition-timing-function);\n background-color: var(--ddk-component-fullScreenModal-background-color);\n height: 100%;\n width: 100%;\n }\n\n @keyframes grow {\n 0% {\n transform: scale(0.66);\n }\n 100% {\n transform: scale(1);\n }\n }\n`;\n\ninterface FullScreenModalProps {\n children: ReactNode;\n contain?: boolean;\n maximized?: boolean;\n onClose?: () => void;\n onClosed?: () => void;\n show?: boolean;\n}\n\nexport const FullScreenModal = ({\n children,\n contain = true,\n onClose,\n onClosed,\n show,\n}: FullScreenModalProps) => {\n const transition = useTransition(show, {\n initial: { opacity: 0 },\n from: { opacity: 0 },\n enter: { opacity: 1 },\n leave: { opacity: 0 },\n onDestroyed: onClosed,\n });\n\n return createPortal(\n transition(\n (style, item) =>\n item && (\n <animated.div\n css={fullScreenModalStyles}\n style={style}\n onPointerDown={onClose}\n >\n <div\n className={`modal`}\n onPointerDown={(event) => event.stopPropagation()}\n >\n <ModalContent contain={contain}>{children}</ModalContent>\n </div>\n </animated.div>\n )\n ),\n document.body\n );\n};\n","import styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\nimport { CloseButton } from \"../../close-button\";\n\nconst FullScreenHeaderContainer = styled.div`\n box-sizing: border-box;\n display: flex;\n gap: var(--ddk-component-modal-header-gap);\n justify-content: space-between;\n align-items: center;\n font-size: var(--ddk-component-modal-header-font-size);\n width: 100%;\n user-select: none;\n`;\n\nconst CloseButtonContainer = styled.div`\n padding-top: 1%;\n padding-right: 1%;\n z-index: 99;\n`;\n\nconst CloseButtonStyle = styled(CloseButton)`\n font-size: 48px;\n z-index: 99999;\n background-color: white;\n padding: 5%;\n`;\n\ninterface FullScreenHeaderProps {\n title?: ReactNode;\n onClose?: () => void;\n closeButtonLabel?: string;\n}\n\nexport const FullScreenHeader = ({\n onClose,\n title,\n closeButtonLabel,\n}: FullScreenHeaderProps) => (\n <FullScreenHeaderContainer>\n <span></span>\n {title}\n <CloseButtonContainer>\n <CloseButtonStyle onPointerDown={onClose} label={closeButtonLabel} />\n </CloseButtonContainer>\n </FullScreenHeaderContainer>\n);\n","import styled from \"@emotion/styled\";\nimport { kosComponent } from \"@kosdev-code/kos-ui-sdk\";\n\ninterface ContainerProps {\n noData?: boolean;\n}\n\nconst Container = styled.div<ContainerProps>`\n display: grid;\n grid-template-columns: ${(props) => (props.noData ? \"1fr\" : \"1fr 1fr 1fr\")};\n gap: 12px;\n`;\n\ninterface GridItemRendererProps<T> {\n item: T;\n}\n\nexport interface GridItemRenderer<T> {\n ({ item }: GridItemRendererProps<T>): JSX.Element;\n}\n\nexport interface GridProps<T> {\n ItemRenderer: GridItemRenderer<T>;\n MoreItemsRenderer: React.ElementType;\n NoDataItemRenderer: React.ElementType;\n items?: T[];\n maxNumberOfItems: number;\n}\n\nexport const Grid = kosComponent(\n <T,>({\n ItemRenderer,\n items,\n maxNumberOfItems,\n MoreItemsRenderer,\n NoDataItemRenderer,\n }: GridProps<T>) => (\n <Container noData={!items || !items.length}>\n {items && items.length ? (\n (items.length > maxNumberOfItems\n ? items.slice(0, maxNumberOfItems - 1)\n : items\n ).map((item, index) => <ItemRenderer key={index} item={item} />)\n ) : (\n <NoDataItemRenderer />\n )}\n\n {items && items?.length > maxNumberOfItems && <MoreItemsRenderer />}\n </Container>\n )\n);\n","import styled from \"@emotion/styled\";\nimport { useKosTranslation } from \"@kosdev-code/kos-ui-sdk\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { Card, type CardProps } from \"../../styles\";\n\nexport const AvailableText = styled.div`\n color: var(--ddk-component-info-card-color-default);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: var(--ddk-component-info-card-font-size);\n font-style: normal;\n font-weight: var(--ddk-component-info-card-font-weight);\n letter-spacing: 0.64px;\n line-height: 135%;\n`;\n\nexport const UnavailableText = styled.div`\n color: var(--ddk-component-info-card-color-disabled);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: var(--ddk-component-info-card-font-size);\n font-style: normal;\n font-weight: var(--ddk-component-info-card-font-weight);\n letter-spacing: -0.225px;\n line-height: 135%;\n`;\n\nconst CardFlexStart = styled(Card)`\n justify-content: flex-start;\n`;\n\ninterface InfoProp extends CardProps {\n label: string;\n value: string | undefined;\n unavailableText: string;\n}\n\nexport const InfoCard = ({\n label,\n unavailableText,\n value,\n ...props\n}: InfoProp) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <Card collapse={componentModeOverride === \"compact\"} {...props}>\n {label}\n {componentModeOverride === \"compact\" ? (\n <CardFlexStart>\n {value ? (\n <AvailableText>{value}</AvailableText>\n ) : (\n <UnavailableText>{unavailableText}</UnavailableText>\n )}\n </CardFlexStart>\n ) : value ? (\n <AvailableText>{value}</AvailableText>\n ) : (\n <UnavailableText>{unavailableText}</UnavailableText>\n )}\n </Card>\n );\n};\n\nexport const InfoCardContainer = (props: Omit<InfoProp, \"unavailableText\">) => {\n const { t } = useKosTranslation(\"common\");\n\n return <InfoCard unavailableText={t(\"unavailable\")} {...props} />;\n};\n","import { ErrorIconWithBackground } from \"@kosdev-code/kos-ddk-styles\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { BodyLarge, Card, type CardProps } from \"../../styles\";\nimport styled from \"@emotion/styled\";\nimport type { ReactNode } from \"react\";\n\nconst InfoMessageCard = styled(Card)`\n background-color: var(--ddk-semantic-color-system-orange-light);\n border-color: var(--ddk-semantic-color-system-orange);\n gap: var(--ddk-generic-padding-medium);\n padding: var(--ddk-generic-padding-large) var(--ddk-generic-padding-x-large);\n display: flex;\n align-items: flex-start;\n min-height: initial;\n`;\n\nconst InfoMessageIcon = styled(ErrorIconWithBackground)`\n background-color: var(--ddk-semantic-color-system-orange);\n box-sizing: border-box;\n width: var(--ddk-component-info-message-icon-width);\n height: var(--ddk-component-info-message-icon-height);\n padding: var(--ddk-component-info-message-icon-padding);\n`;\n\nconst Message = styled(BodyLarge)`\n color: var(--ddk-semantic-color-system-orange);\n flex: 1;\n`;\n\ninterface InfoProp extends CardProps {\n children: ReactNode;\n}\n\nexport const InfoMessage = ({ children, ...props }: InfoProp) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <InfoMessageCard {...props}>\n <InfoMessageIcon />\n <Message>{children}</Message>\n </InfoMessageCard>\n );\n};\n","/*!\n * \n * react-simple-keyboard v3.8.205\n * https://github.com/hodgef/react-simple-keyboard\n *\n * Copyright (c) Francisco Hodge (https://github.com/hodgef) and project contributors.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e(require(\"react\")):\"function\"==typeof define&&define.amd?define([\"react\"],e):\"object\"==typeof exports?exports.ReactSimpleKeyboard=e(require(\"react\")):t.ReactSimpleKeyboard=e(t.React)}(this,(function(t){return function(){var e={981:function(){\"undefined\"==typeof Element||\"remove\"in Element.prototype||(Element.prototype.remove=function(){this.parentNode&&this.parentNode.removeChild(this)}),\"undefined\"!=typeof self&&\"document\"in self&&((!(\"classList\"in document.createElement(\"_\"))||document.createElementNS&&!(\"classList\"in document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\")))&&function(t){\"use strict\";if(\"Element\"in t){var e=\"classList\",n=\"prototype\",r=t.Element[n],o=Object,i=String[n].trim||function(){return this.replace(/^\\s+|\\s+$/g,\"\")},a=Array[n].indexOf||function(t){for(var e=0,n=this.length;e<n;e++)if(e in this&&this[e]===t)return e;return-1},s=function(t,e){this.name=t,this.code=DOMException[t],this.message=e},u=function(t,e){if(\"\"===e)throw new s(\"SYNTAX_ERR\",\"The token must not be empty.\");if(/\\s/.test(e))throw new s(\"INVALID_CHARACTER_ERR\",\"The token must not contain space characters.\");return a.call(t,e)},c=function(t){for(var e=i.call(t.getAttribute(\"class\")||\"\"),n=e?e.split(/\\s+/):[],r=0,o=n.length;r<o;r++)this.push(n[r]);this._updateClassName=function(){t.setAttribute(\"class\",this.toString())}},l=c[n]=[],f=function(){return new c(this)};if(s[n]=Error[n],l.item=function(t){return this[t]||null},l.contains=function(t){return~u(this,t+\"\")},l.add=function(){var t,e=arguments,n=0,r=e.length,o=!1;do{~u(this,t=e[n]+\"\")||(this.push(t),o=!0)}while(++n<r);o&&this._updateClassName()},l.remove=function(){var t,e,n=arguments,r=0,o=n.length,i=!1;do{for(e=u(this,t=n[r]+\"\");~e;)this.splice(e,1),i=!0,e=u(this,t)}while(++r<o);i&&this._updateClassName()},l.toggle=function(t,e){var n=this.contains(t),r=n?!0!==e&&\"remove\":!1!==e&&\"add\";return r&&this[r](t),!0===e||!1===e?e:!n},l.replace=function(t,e){var n=u(t+\"\");~n&&(this.splice(n,1,e),this._updateClassName())},l.toString=function(){return this.join(\" \")},o.defineProperty){var p={get:f,enumerable:!0,configurable:!0};try{o.defineProperty(r,e,p)}catch(t){void 0!==t.number&&-2146823252!==t.number||(p.enumerable=!1,o.defineProperty(r,e,p))}}else o[n].__defineGetter__&&r.__defineGetter__(e,f)}}(self),function(){\"use strict\";var t=document.createElement(\"_\");if(t.classList.add(\"c1\",\"c2\"),!t.classList.contains(\"c2\")){var e=function(t){var e=DOMTokenList.prototype[t];DOMTokenList.prototype[t]=function(t){var n,r=arguments.length;for(n=0;n<r;n++)t=arguments[n],e.call(this,t)}};e(\"add\"),e(\"remove\")}if(t.classList.toggle(\"c3\",!1),t.classList.contains(\"c3\")){var n=DOMTokenList.prototype.toggle;DOMTokenList.prototype.toggle=function(t,e){return 1 in arguments&&!this.contains(t)==!e?e:n.call(this,t)}}\"replace\"in document.createElement(\"_\").classList||(DOMTokenList.prototype.replace=function(t,e){var n=this.toString().split(\" \"),r=n.indexOf(t+\"\");~r&&(n=n.slice(r),this.remove.apply(this,n),this.add(e),this.add.apply(this,n.slice(1)))}),t=null}())},548:function(t){t.exports=function(){\"use strict\";var t={9306:function(t,e,n){var r=n(4901),o=n(6823),i=TypeError;t.exports=function(t){if(r(t))return t;throw new i(o(t)+\" is not a function\")}},5548:function(t,e,n){var r=n(3517),o=n(6823),i=TypeError;t.exports=function(t){if(r(t))return t;throw new i(o(t)+\" is not a constructor\")}},3506:function(t,e,n){var r=n(3925),o=String,i=TypeError;t.exports=function(t){if(r(t))return t;throw new i(\"Can't set \"+o(t)+\" as a prototype\")}},6469:function(t,e,n){var r=n(8227),o=n(2360),i=n(4913).f,a=r(\"unscopables\"),s=Array.prototype;void 0===s[a]&&i(s,a,{configurable:!0,value:o(null)}),t.exports=function(t){s[a][t]=!0}},7829:function(t,e,n){var r=n(8183).charAt;t.exports=function(t,e,n){return e+(n&&r(t,e).length||1)}},8551:function(t,e,n){var r=n(34),o=String,i=TypeError;t.exports=function(t){if(r(t))return t;throw new i(o(t)+\" is not an object\")}},235:function(t,e,n){var r=n(9213).forEach,o=n(4598)(\"forEach\");t.exports=o?[].forEach:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}},7916:function(t,e,n){var r=n(6080),o=n(9565),i=n(8981),a=n(6319),s=n(4209),u=n(3517),c=n(6198),l=n(4659),f=n(4527),p=n(81),d=n(851),h=n(9539),v=Array;t.exports=function(t){var e=u(this),n=arguments.length,y=n>1?arguments[1]:void 0,g=void 0!==y;g&&(y=r(y,n>2?arguments[2]:void 0));var m,b,w,x,O,E,S=i(t),k=d(S),P=0;if(!k||this===v&&s(k))for(m=c(S),b=e?new this(m):v(m);m>P;P++)E=g?y(S[P],P):S[P],l(b,P,E);else for(b=e?new this:[],O=(x=p(S,k)).next;!(w=o(O,x)).done;P++){E=g?a(x,y,[w.value,P],!0):w.value;try{l(b,P,E)}catch(t){h(x,\"throw\",t)}}return f(b,P),b}},9617:function(t,e,n){var r=n(5397),o=n(5610),i=n(6198),a=function(t){return function(e,n,a){var s=r(e),u=i(s);if(0===u)return!t&&-1;var c,l=o(a,u);if(t&&n!=n){for(;u>l;)if((c=s[l++])!=c)return!0}else for(;u>l;l++)if((t||l in s)&&s[l]===n)return t||l||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},9213:function(t,e,n){var r=n(6080),o=n(7055),i=n(8981),a=n(6198),s=n(1469),u=n(4659),c=function(t){var e=1===t,n=2===t,c=3===t,l=4===t,f=6===t,p=7===t,d=5===t||f;return function(h,v,y){for(var g,m,b=i(h),w=o(b),x=a(w),O=r(v,y),E=0,S=0,k=e?s(h,x):n||p?s(h,0):void 0;x>E;E++)if((d||E in w)&&(m=O(g=w[E],E,b),t))if(e)u(k,E,m);else if(m)switch(t){case 3:return!0;case 5:return g;case 6:return E;case 2:u(k,S++,g)}else switch(t){case 4:return!1;case 7:u(k,S++,g)}return f?-1:c||l?l:k}};t.exports={forEach:c(0),map:c(1),filter:c(2),some:c(3),every:c(4),find:c(5),findIndex:c(6),filterReject:c(7)}},597:function(t,e,n){var r=n(9039),o=n(8227),i=n(9519),a=o(\"species\");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},4598:function(t,e,n){var r=n(9039);t.exports=function(t,e){var n=[][t];return!!n&&r((function(){n.call(null,e||function(){return 1},1)}))}},926:function(t,e,n){var r=n(9306),o=n(8981),i=n(7055),a=n(6198),s=TypeError,u=\"Reduce of empty array with no initial value\",c=function(t){return function(e,n,c,l){var f=o(e),p=i(f),d=a(f);if(r(n),0===d&&c<2)throw new s(u);var h=t?d-1:0,v=t?-1:1;if(c<2)for(;;){if(h in p){l=p[h],h+=v;break}if(h+=v,t?h<0:d<=h)throw new s(u)}for(;t?h>=0:d>h;h+=v)h in p&&(l=n(l,p[h],h,f));return l}};t.exports={left:c(!1),right:c(!0)}},4527:function(t,e,n){var r=n(3724),o=n(4376),i=TypeError,a=Object.getOwnPropertyDescriptor,s=r&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],\"length\",{writable:!1}).length=1}catch(t){return t instanceof TypeError}}();t.exports=s?function(t,e){if(o(t)&&!a(t,\"length\").writable)throw new i(\"Cannot set read only .length\");return t.length=e}:function(t,e){return t.length=e}},7680:function(t,e,n){var r=n(9504);t.exports=r([].slice)},4488:function(t,e,n){var r=n(7680),o=Math.floor,i=function(t,e){var n=t.length;if(n<8)for(var a,s,u=1;u<n;){for(s=u,a=t[u];s&&e(t[s-1],a)>0;)t[s]=t[--s];s!==u++&&(t[s]=a)}else for(var c=o(n/2),l=i(r(t,0,c),e),f=i(r(t,c),e),p=l.length,d=f.length,h=0,v=0;h<p||v<d;)t[h+v]=h<p&&v<d?e(l[h],f[v])<=0?l[h++]:f[v++]:h<p?l[h++]:f[v++];return t};t.exports=i},7433:function(t,e,n){var r=n(4376),o=n(3517),i=n(34),a=n(8227)(\"species\"),s=Array;t.exports=function(t){var e;return r(t)&&(e=t.constructor,(o(e)&&(e===s||r(e.prototype))||i(e)&&null===(e=e[a]))&&(e=void 0)),void 0===e?s:e}},1469:function(t,e,n){var r=n(7433);t.exports=function(t,e){return new(r(t))(0===e?0:e)}},6319:function(t,e,n){var r=n(8551),o=n(9539);t.exports=function(t,e,n,i){try{return i?e(r(n)[0],n[1]):e(n)}catch(e){o(t,\"throw\",e)}}},4428:function(t,e,n){var r=n(8227)(\"iterator\"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(t){}t.exports=function(t,e){try{if(!e&&!o)return!1}catch(t){return!1}var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(t){}return n}},2195:function(t,e,n){var r=n(9504),o=r({}.toString),i=r(\"\".slice);t.exports=function(t){return i(o(t),8,-1)}},6955:function(t,e,n){var r=n(2140),o=n(4901),i=n(2195),a=n(8227)(\"toStringTag\"),s=Object,u=\"Arguments\"===i(function(){return arguments}());t.exports=r?i:function(t){var e,n,r;return void 0===t?\"Undefined\":null===t?\"Null\":\"string\"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=s(t),a))?n:u?i(e):\"Object\"===(r=i(e))&&o(e.callee)?\"Arguments\":r}},7740:function(t,e,n){var r=n(9297),o=n(5031),i=n(7347),a=n(4913);t.exports=function(t,e,n){for(var s=o(e),u=a.f,c=i.f,l=0;l<s.length;l++){var f=s[l];r(t,f)||n&&r(n,f)||u(t,f,c(e,f))}}},1436:function(t,e,n){var r=n(8227)(\"match\");t.exports=function(t){var e=/./;try{\"/./\"[t](e)}catch(n){try{return e[r]=!1,\"/./\"[t](e)}catch(t){}}return!1}},2211:function(t,e,n){var r=n(9039);t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},2529:function(t){t.exports=function(t,e){return{value:t,done:e}}},6699:function(t,e,n){var r=n(3724),o=n(4913),i=n(6980);t.exports=r?function(t,e,n){return o.f(t,e,i(1,n))}:function(t,e,n){return t[e]=n,t}},6980:function(t){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},4659:function(t,e,n){var r=n(3724),o=n(4913),i=n(6980);t.exports=function(t,e,n){r?o.f(t,e,i(0,n)):t[e]=n}},3640:function(t,e,n){var r=n(8551),o=n(4270),i=TypeError;t.exports=function(t){if(r(this),\"string\"===t||\"default\"===t)t=\"string\";else if(\"number\"!==t)throw new i(\"Incorrect hint\");return o(this,t)}},2106:function(t,e,n){var r=n(283),o=n(4913);t.exports=function(t,e,n){return n.get&&r(n.get,e,{getter:!0}),n.set&&r(n.set,e,{setter:!0}),o.f(t,e,n)}},6840:function(t,e,n){var r=n(4901),o=n(4913),i=n(283),a=n(9433);t.exports=function(t,e,n,s){s||(s={});var u=s.enumerable,c=void 0!==s.name?s.name:e;if(r(n)&&i(n,c,s),s.global)u?t[e]=n:a(e,n);else{try{s.unsafe?t[e]&&(u=!0):delete t[e]}catch(t){}u?t[e]=n:o.f(t,e,{value:n,enumerable:!1,configurable:!s.nonConfigurable,writable:!s.nonWritable})}return t}},9433:function(t,e,n){var r=n(4576),o=Object.defineProperty;t.exports=function(t,e){try{o(r,t,{value:e,configurable:!0,writable:!0})}catch(n){r[t]=e}return e}},4606:function(t,e,n){var r=n(6823),o=TypeError;t.exports=function(t,e){if(!delete t[e])throw new o(\"Cannot delete property \"+r(e)+\" of \"+r(t))}},3724:function(t,e,n){var r=n(9039);t.exports=!r((function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]}))},4055:function(t,e,n){var r=n(4576),o=n(34),i=r.document,a=o(i)&&o(i.createElement);t.exports=function(t){return a?i.createElement(t):{}}},6837:function(t){var e=TypeError;t.exports=function(t){if(t>9007199254740991)throw new e(\"Maximum allowed index exceeded\");return t}},7400:function(t){t.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},9296:function(t,e,n){var r=n(4055)(\"span\").classList,o=r&&r.constructor&&r.constructor.prototype;t.exports=o===Object.prototype?void 0:o},8727:function(t){t.exports=[\"constructor\",\"hasOwnProperty\",\"isPrototypeOf\",\"propertyIsEnumerable\",\"toLocaleString\",\"toString\",\"valueOf\"]},3709:function(t,e,n){var r=n(2839).match(/firefox\\/(\\d+)/i);t.exports=!!r&&+r[1]},3763:function(t,e,n){var r=n(2839);t.exports=/MSIE|Trident/.test(r)},6193:function(t,e,n){var r=n(4215);t.exports=\"NODE\"===r},2839:function(t,e,n){var r=n(4576).navigator,o=r&&r.userAgent;t.exports=o?String(o):\"\"},9519:function(t,e,n){var r,o,i=n(4576),a=n(2839),s=i.process,u=i.Deno,c=s&&s.versions||u&&u.version,l=c&&c.v8;l&&(o=(r=l.split(\".\"))[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(!(r=a.match(/Edge\\/(\\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\\/(\\d+)/))&&(o=+r[1]),t.exports=o},3607:function(t,e,n){var r=n(2839).match(/AppleWebKit\\/(\\d+)\\./);t.exports=!!r&&+r[1]},4215:function(t,e,n){var r=n(4576),o=n(2839),i=n(2195),a=function(t){return o.slice(0,t.length)===t};t.exports=a(\"Bun/\")?\"BUN\":a(\"Cloudflare-Workers\")?\"CLOUDFLARE\":a(\"Deno/\")?\"DENO\":a(\"Node.js/\")?\"NODE\":r.Bun&&\"string\"==typeof Bun.version?\"BUN\":r.Deno&&\"object\"==typeof Deno.version?\"DENO\":\"process\"===i(r.process)?\"NODE\":r.window&&r.document?\"BROWSER\":\"REST\"},6518:function(t,e,n){var r=n(4576),o=n(7347).f,i=n(6699),a=n(6840),s=n(9433),u=n(7740),c=n(2796);t.exports=function(t,e){var n,l,f,p,d,h=t.target,v=t.global,y=t.stat;if(n=v?r:y?r[h]||s(h,{}):r[h]&&r[h].prototype)for(l in e){if(p=e[l],f=t.dontCallGetSet?(d=o(n,l))&&d.value:n[l],!c(v?l:h+(y?\".\":\"#\")+l,t.forced)&&void 0!==f){if(typeof p==typeof f)continue;u(p,f)}(t.sham||f&&f.sham)&&i(p,\"sham\",!0),a(n,l,p,t)}}},9039:function(t){t.exports=function(t){try{return!!t()}catch(t){return!0}}},9228:function(t,e,n){n(7495);var r=n(9565),o=n(6840),i=n(7323),a=n(9039),s=n(8227),u=n(6699),c=s(\"species\"),l=RegExp.prototype;t.exports=function(t,e,n,f){var p=s(t),d=!a((function(){var e={};return e[p]=function(){return 7},7!==\"\"[t](e)})),h=d&&!a((function(){var e=!1,n=/a/;if(\"split\"===t){var r={};r[c]=function(){return n},(n={constructor:r,flags:\"\"})[p]=/./[p]}return n.exec=function(){return e=!0,null},n[p](\"\"),!e}));if(!d||!h||n){var v=/./[p],y=e(p,\"\"[t],(function(t,e,n,o,a){var s=e.exec;return s===i||s===l.exec?d&&!a?{done:!0,value:r(v,e,n,o)}:{done:!0,value:r(t,n,e,o)}:{done:!1}}));o(String.prototype,t,y[0]),o(l,p,y[1])}f&&u(l[p],\"sham\",!0)}},8745:function(t,e,n){var r=n(616),o=Function.prototype,i=o.apply,a=o.call;t.exports=\"object\"==typeof Reflect&&Reflect.apply||(r?a.bind(i):function(){return a.apply(i,arguments)})},6080:function(t,e,n){var r=n(7476),o=n(9306),i=n(616),a=r(r.bind);t.exports=function(t,e){return o(t),void 0===e?t:i?a(t,e):function(){return t.apply(e,arguments)}}},616:function(t,e,n){var r=n(9039);t.exports=!r((function(){var t=function(){}.bind();return\"function\"!=typeof t||t.hasOwnProperty(\"prototype\")}))},566:function(t,e,n){var r=n(9504),o=n(9306),i=n(34),a=n(9297),s=n(7680),u=n(616),c=Function,l=r([].concat),f=r([].join),p={};t.exports=u?c.bind:function(t){var e=o(this),n=e.prototype,r=s(arguments,1),u=function(){var n=l(r,s(arguments));return this instanceof u?function(t,e,n){if(!a(p,e)){for(var r=[],o=0;o<e;o++)r[o]=\"a[\"+o+\"]\";p[e]=c(\"C,a\",\"return new C(\"+f(r,\",\")+\")\")}return p[e](t,n)}(e,n.length,n):e.apply(t,n)};return i(n)&&(u.prototype=n),u}},9565:function(t,e,n){var r=n(616),o=Function.prototype.call;t.exports=r?o.bind(o):function(){return o.apply(o,arguments)}},350:function(t,e,n){var r=n(3724),o=n(9297),i=Function.prototype,a=r&&Object.getOwnPropertyDescriptor,s=o(i,\"name\"),u=s&&\"something\"===function(){}.name,c=s&&(!r||r&&a(i,\"name\").configurable);t.exports={EXISTS:s,PROPER:u,CONFIGURABLE:c}},6706:function(t,e,n){var r=n(9504),o=n(9306);t.exports=function(t,e,n){try{return r(o(Object.getOwnPropertyDescriptor(t,e)[n]))}catch(t){}}},7476:function(t,e,n){var r=n(2195),o=n(9504);t.exports=function(t){if(\"Function\"===r(t))return o(t)}},9504:function(t,e,n){var r=n(616),o=Function.prototype,i=o.call,a=r&&o.bind.bind(i,i);t.exports=r?a:function(t){return function(){return i.apply(t,arguments)}}},7751:function(t,e,n){var r=n(4576),o=n(4901);t.exports=function(t,e){return arguments.length<2?(n=r[t],o(n)?n:void 0):r[t]&&r[t][e];var n}},851:function(t,e,n){var r=n(6955),o=n(5966),i=n(4117),a=n(6269),s=n(8227)(\"iterator\");t.exports=function(t){if(!i(t))return o(t,s)||o(t,\"@@iterator\")||a[r(t)]}},81:function(t,e,n){var r=n(9565),o=n(9306),i=n(8551),a=n(6823),s=n(851),u=TypeError;t.exports=function(t,e){var n=arguments.length<2?s(t):e;if(o(n))return i(r(n,t));throw new u(a(t)+\" is not iterable\")}},5966:function(t,e,n){var r=n(9306),o=n(4117);t.exports=function(t,e){var n=t[e];return o(n)?void 0:r(n)}},2478:function(t,e,n){var r=n(9504),o=n(8981),i=Math.floor,a=r(\"\".charAt),s=r(\"\".replace),u=r(\"\".slice),c=/\\$([$&'`]|\\d{1,2}|<[^>]*>)/g,l=/\\$([$&'`]|\\d{1,2})/g;t.exports=function(t,e,n,r,f,p){var d=n+t.length,h=r.length,v=l;return void 0!==f&&(f=o(f),v=c),s(p,v,(function(o,s){var c;switch(a(s,0)){case\"$\":return\"$\";case\"&\":return t;case\"`\":return u(e,0,n);case\"'\":return u(e,d);case\"<\":c=f[u(s,1,-1)];break;default:var l=+s;if(0===l)return o;if(l>h){var p=i(l/10);return 0===p?o:p<=h?void 0===r[p-1]?a(s,1):r[p-1]+a(s,1):o}c=r[l-1]}return void 0===c?\"\":c}))}},4576:function(t,e,n){var r=function(t){return t&&t.Math===Math&&t};t.exports=r(\"object\"==typeof globalThis&&globalThis)||r(\"object\"==typeof window&&window)||r(\"object\"==typeof self&&self)||r(\"object\"==typeof n.g&&n.g)||r(\"object\"==typeof this&&this)||function(){return this}()||Function(\"return this\")()},9297:function(t,e,n){var r=n(9504),o=n(8981),i=r({}.hasOwnProperty);t.exports=Object.hasOwn||function(t,e){return i(o(t),e)}},421:function(t){t.exports={}},397:function(t,e,n){var r=n(7751);t.exports=r(\"document\",\"documentElement\")},5917:function(t,e,n){var r=n(3724),o=n(9039),i=n(4055);t.exports=!r&&!o((function(){return 7!==Object.defineProperty(i(\"div\"),\"a\",{get:function(){return 7}}).a}))},7055:function(t,e,n){var r=n(9504),o=n(9039),i=n(2195),a=Object,s=r(\"\".split);t.exports=o((function(){return!a(\"z\").propertyIsEnumerable(0)}))?function(t){return\"String\"===i(t)?s(t,\"\"):a(t)}:a},3167:function(t,e,n){var r=n(4901),o=n(34),i=n(2967);t.exports=function(t,e,n){var a,s;return i&&r(a=e.constructor)&&a!==n&&o(s=a.prototype)&&s!==n.prototype&&i(t,s),t}},3706:function(t,e,n){var r=n(9504),o=n(4901),i=n(7629),a=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(t){return a(t)}),t.exports=i.inspectSource},1181:function(t,e,n){var r,o,i,a=n(8622),s=n(4576),u=n(34),c=n(6699),l=n(9297),f=n(7629),p=n(6119),d=n(421),h=\"Object already initialized\",v=s.TypeError,y=s.WeakMap;if(a||f.state){var g=f.state||(f.state=new y);g.get=g.get,g.has=g.has,g.set=g.set,r=function(t,e){if(g.has(t))throw new v(h);return e.facade=t,g.set(t,e),e},o=function(t){return g.get(t)||{}},i=function(t){return g.has(t)}}else{var m=p(\"state\");d[m]=!0,r=function(t,e){if(l(t,m))throw new v(h);return e.facade=t,c(t,m,e),e},o=function(t){return l(t,m)?t[m]:{}},i=function(t){return l(t,m)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw new v(\"Incompatible receiver, \"+t+\" required\");return n}}}},4209:function(t,e,n){var r=n(8227),o=n(6269),i=r(\"iterator\"),a=Array.prototype;t.exports=function(t){return void 0!==t&&(o.Array===t||a[i]===t)}},4376:function(t,e,n){var r=n(2195);t.exports=Array.isArray||function(t){return\"Array\"===r(t)}},4901:function(t){var e=\"object\"==typeof document&&document.all;t.exports=void 0===e&&void 0!==e?function(t){return\"function\"==typeof t||t===e}:function(t){return\"function\"==typeof t}},3517:function(t,e,n){var r=n(9504),o=n(9039),i=n(4901),a=n(6955),s=n(7751),u=n(3706),c=function(){},l=s(\"Reflect\",\"construct\"),f=/^\\s*(?:class|function)\\b/,p=r(f.exec),d=!f.test(c),h=function(t){if(!i(t))return!1;try{return l(c,[],t),!0}catch(t){return!1}},v=function(t){if(!i(t))return!1;switch(a(t)){case\"AsyncFunction\":case\"GeneratorFunction\":case\"AsyncGeneratorFunction\":return!1}try{return d||!!p(f,u(t))}catch(t){return!0}};v.sham=!0,t.exports=!l||o((function(){var t;return h(h.call)||!h(Object)||!h((function(){t=!0}))||t}))?v:h},2796:function(t,e,n){var r=n(9039),o=n(4901),i=/#|\\.prototype\\./,a=function(t,e){var n=u[s(t)];return n===l||n!==c&&(o(e)?r(e):!!e)},s=a.normalize=function(t){return String(t).replace(i,\".\").toLowerCase()},u=a.data={},c=a.NATIVE=\"N\",l=a.POLYFILL=\"P\";t.exports=a},2087:function(t,e,n){var r=n(34),o=Math.floor;t.exports=Number.isInteger||function(t){return!r(t)&&isFinite(t)&&o(t)===t}},4117:function(t){t.exports=function(t){return null==t}},34:function(t,e,n){var r=n(4901);t.exports=function(t){return\"object\"==typeof t?null!==t:r(t)}},3925:function(t,e,n){var r=n(34);t.exports=function(t){return r(t)||null===t}},6395:function(t){t.exports=!1},5810:function(t,e,n){var r=n(34),o=n(1181).get;t.exports=function(t){if(!r(t))return!1;var e=o(t);return!!e&&\"RawJSON\"===e.type}},788:function(t,e,n){var r=n(34),o=n(2195),i=n(8227)(\"match\");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:\"RegExp\"===o(t))}},757:function(t,e,n){var r=n(7751),o=n(4901),i=n(1625),a=n(7040),s=Object;t.exports=a?function(t){return\"symbol\"==typeof t}:function(t){var e=r(\"Symbol\");return o(e)&&i(e.prototype,s(t))}},9539:function(t,e,n){var r=n(9565),o=n(8551),i=n(5966);t.exports=function(t,e,n){var a,s;o(t);try{if(!(a=i(t,\"return\"))){if(\"throw\"===e)throw n;return n}a=r(a,t)}catch(t){s=!0,a=t}if(\"throw\"===e)throw n;if(s)throw a;return o(a),n}},3994:function(t,e,n){var r=n(7657).IteratorPrototype,o=n(2360),i=n(6980),a=n(687),s=n(6269),u=function(){return this};t.exports=function(t,e,n,c){var l=e+\" Iterator\";return t.prototype=o(r,{next:i(+!c,n)}),a(t,l,!1,!0),s[l]=u,t}},1088:function(t,e,n){var r=n(6518),o=n(9565),i=n(6395),a=n(350),s=n(4901),u=n(3994),c=n(2787),l=n(2967),f=n(687),p=n(6699),d=n(6840),h=n(8227),v=n(6269),y=n(7657),g=a.PROPER,m=a.CONFIGURABLE,b=y.IteratorPrototype,w=y.BUGGY_SAFARI_ITERATORS,x=h(\"iterator\"),O=\"keys\",E=\"values\",S=\"entries\",k=function(){return this};t.exports=function(t,e,n,a,h,y,P){u(n,e,a);var I,C,A,M=function(t){if(t===h&&R)return R;if(!w&&t&&t in N)return N[t];switch(t){case O:case E:case S:return function(){return new n(this,t)}}return function(){return new n(this)}},D=e+\" Iterator\",T=!1,N=t.prototype,j=N[x]||N[\"@@iterator\"]||h&&N[h],R=!w&&j||M(h),L=\"Array\"===e&&N.entries||j;if(L&&(I=c(L.call(new t)))!==Object.prototype&&I.next&&(i||c(I)===b||(l?l(I,b):s(I[x])||d(I,x,k)),f(I,D,!0,!0),i&&(v[D]=k)),g&&h===E&&j&&j.name!==E&&(!i&&m?p(N,\"name\",E):(T=!0,R=function(){return o(j,this)})),h)if(C={values:M(E),keys:y?R:M(O),entries:M(S)},P)for(A in C)(w||T||!(A in N))&&d(N,A,C[A]);else r({target:e,proto:!0,forced:w||T},C);return i&&!P||N[x]===R||d(N,x,R,{name:h}),v[e]=R,C}},7657:function(t,e,n){var r,o,i,a=n(9039),s=n(4901),u=n(34),c=n(2360),l=n(2787),f=n(6840),p=n(8227),d=n(6395),h=p(\"iterator\"),v=!1;[].keys&&(\"next\"in(i=[].keys())?(o=l(l(i)))!==Object.prototype&&(r=o):v=!0),!u(r)||a((function(){var t={};return r[h].call(t)!==t}))?r={}:d&&(r=c(r)),s(r[h])||f(r,h,(function(){return this})),t.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:v}},6269:function(t){t.exports={}},6198:function(t,e,n){var r=n(8014);t.exports=function(t){return r(t.length)}},283:function(t,e,n){var r=n(9504),o=n(9039),i=n(4901),a=n(9297),s=n(3724),u=n(350).CONFIGURABLE,c=n(3706),l=n(1181),f=l.enforce,p=l.get,d=String,h=Object.defineProperty,v=r(\"\".slice),y=r(\"\".replace),g=r([].join),m=s&&!o((function(){return 8!==h((function(){}),\"length\",{value:8}).length})),b=String(String).split(\"String\"),w=t.exports=function(t,e,n){\"Symbol(\"===v(d(e),0,7)&&(e=\"[\"+y(d(e),/^Symbol\\(([^)]*)\\).*$/,\"$1\")+\"]\"),n&&n.getter&&(e=\"get \"+e),n&&n.setter&&(e=\"set \"+e),(!a(t,\"name\")||u&&t.name!==e)&&(s?h(t,\"name\",{value:e,configurable:!0}):t.name=e),m&&n&&a(n,\"arity\")&&t.length!==n.arity&&h(t,\"length\",{value:n.arity});try{n&&a(n,\"constructor\")&&n.constructor?s&&h(t,\"prototype\",{writable:!1}):t.prototype&&(t.prototype=void 0)}catch(t){}var r=f(t);return a(r,\"source\")||(r.source=g(b,\"string\"==typeof e?e:\"\")),t};Function.prototype.toString=w((function(){return i(this)&&p(this).source||c(this)}),\"toString\")},741:function(t){var e=Math.ceil,n=Math.floor;t.exports=Math.trunc||function(t){var r=+t;return(r>0?n:e)(r)}},7819:function(t,e,n){var r=n(9039);t.exports=!r((function(){var t=\"9007199254740993\",e=JSON.rawJSON(t);return!JSON.isRawJSON(e)||JSON.stringify(e)!==t}))},5749:function(t,e,n){var r=n(788),o=TypeError;t.exports=function(t){if(r(t))throw new o(\"The method doesn't accept regular expressions\");return t}},4213:function(t,e,n){var r=n(3724),o=n(9504),i=n(9565),a=n(9039),s=n(1072),u=n(3717),c=n(8773),l=n(8981),f=n(7055),p=Object.assign,d=Object.defineProperty,h=o([].concat);t.exports=!p||a((function(){if(r&&1!==p({b:1},p(d({},\"a\",{enumerable:!0,get:function(){d(this,\"b\",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol(\"assign detection\"),o=\"abcdefghijklmnopqrst\";return t[n]=7,o.split(\"\").forEach((function(t){e[t]=t})),7!==p({},t)[n]||s(p({},e)).join(\"\")!==o}))?function(t,e){for(var n=l(t),o=arguments.length,a=1,p=u.f,d=c.f;o>a;)for(var v,y=f(arguments[a++]),g=p?h(s(y),p(y)):s(y),m=g.length,b=0;m>b;)v=g[b++],r&&!i(d,y,v)||(n[v]=y[v]);return n}:p},2360:function(t,e,n){var r,o=n(8551),i=n(6801),a=n(8727),s=n(421),u=n(397),c=n(4055),l=n(6119),f=\"prototype\",p=\"script\",d=l(\"IE_PROTO\"),h=function(){},v=function(t){return\"<\"+p+\">\"+t+\"</\"+p+\">\"},y=function(t){t.write(v(\"\")),t.close();var e=t.parentWindow.Object;return t=null,e},g=function(){try{r=new ActiveXObject(\"htmlfile\")}catch(t){}var t,e,n;g=\"undefined\"!=typeof document?document.domain&&r?y(r):(e=c(\"iframe\"),n=\"java\"+p+\":\",e.style.display=\"none\",u.appendChild(e),e.src=String(n),(t=e.contentWindow.document).open(),t.write(v(\"document.F=Object\")),t.close(),t.F):y(r);for(var o=a.length;o--;)delete g[f][a[o]];return g()};s[d]=!0,t.exports=Object.create||function(t,e){var n;return null!==t?(h[f]=o(t),n=new h,h[f]=null,n[d]=t):n=g(),void 0===e?n:i.f(n,e)}},6801:function(t,e,n){var r=n(3724),o=n(8686),i=n(4913),a=n(8551),s=n(5397),u=n(1072);e.f=r&&!o?Object.defineProperties:function(t,e){a(t);for(var n,r=s(e),o=u(e),c=o.length,l=0;c>l;)i.f(t,n=o[l++],r[n]);return t}},4913:function(t,e,n){var r=n(3724),o=n(5917),i=n(8686),a=n(8551),s=n(6969),u=TypeError,c=Object.defineProperty,l=Object.getOwnPropertyDescriptor,f=\"enumerable\",p=\"configurable\",d=\"writable\";e.f=r?i?function(t,e,n){if(a(t),e=s(e),a(n),\"function\"==typeof t&&\"prototype\"===e&&\"value\"in n&&d in n&&!n[d]){var r=l(t,e);r&&r[d]&&(t[e]=n.value,n={configurable:p in n?n[p]:r[p],enumerable:f in n?n[f]:r[f],writable:!1})}return c(t,e,n)}:c:function(t,e,n){if(a(t),e=s(e),a(n),o)try{return c(t,e,n)}catch(t){}if(\"get\"in n||\"set\"in n)throw new u(\"Accessors not supported\");return\"value\"in n&&(t[e]=n.value),t}},7347:function(t,e,n){var r=n(3724),o=n(9565),i=n(8773),a=n(6980),s=n(5397),u=n(6969),c=n(9297),l=n(5917),f=Object.getOwnPropertyDescriptor;e.f=r?f:function(t,e){if(t=s(t),e=u(e),l)try{return f(t,e)}catch(t){}if(c(t,e))return a(!o(i.f,t,e),t[e])}},298:function(t,e,n){var r=n(2195),o=n(5397),i=n(8480).f,a=n(7680),s=\"object\"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function(t){return s&&\"Window\"===r(t)?function(t){try{return i(t)}catch(t){return a(s)}}(t):i(o(t))}},8480:function(t,e,n){var r=n(1828),o=n(8727).concat(\"length\",\"prototype\");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},3717:function(t,e){e.f=Object.getOwnPropertySymbols},2787:function(t,e,n){var r=n(9297),o=n(4901),i=n(8981),a=n(6119),s=n(2211),u=a(\"IE_PROTO\"),c=Object,l=c.prototype;t.exports=s?c.getPrototypeOf:function(t){var e=i(t);if(r(e,u))return e[u];var n=e.constructor;return o(n)&&e instanceof n?n.prototype:e instanceof c?l:null}},1625:function(t,e,n){var r=n(9504);t.exports=r({}.isPrototypeOf)},1828:function(t,e,n){var r=n(9504),o=n(9297),i=n(5397),a=n(9617).indexOf,s=n(421),u=r([].push);t.exports=function(t,e){var n,r=i(t),c=0,l=[];for(n in r)!o(s,n)&&o(r,n)&&u(l,n);for(;e.length>c;)o(r,n=e[c++])&&(~a(l,n)||u(l,n));return l}},1072:function(t,e,n){var r=n(1828),o=n(8727);t.exports=Object.keys||function(t){return r(t,o)}},8773:function(t,e){var n={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,o=r&&!n.call({1:2},1);e.f=o?function(t){var e=r(this,t);return!!e&&e.enumerable}:n},2551:function(t,e,n){var r=n(6395),o=n(4576),i=n(9039),a=n(3607);t.exports=r||!i((function(){if(!(a&&a<535)){var t=Math.random();__defineSetter__.call(null,t,(function(){})),delete o[t]}}))},2967:function(t,e,n){var r=n(6706),o=n(34),i=n(7750),a=n(3506);t.exports=Object.setPrototypeOf||(\"__proto__\"in{}?function(){var t,e=!1,n={};try{(t=r(Object.prototype,\"__proto__\",\"set\"))(n,[]),e=n instanceof Array}catch(t){}return function(n,r){return i(n),a(r),o(n)?(e?t(n,r):n.__proto__=r,n):n}}():void 0)},3179:function(t,e,n){var r=n(2140),o=n(6955);t.exports=r?{}.toString:function(){return\"[object \"+o(this)+\"]\"}},4270:function(t,e,n){var r=n(9565),o=n(4901),i=n(34),a=TypeError;t.exports=function(t,e){var n,s;if(\"string\"===e&&o(n=t.toString)&&!i(s=r(n,t)))return s;if(o(n=t.valueOf)&&!i(s=r(n,t)))return s;if(\"string\"!==e&&o(n=t.toString)&&!i(s=r(n,t)))return s;throw new a(\"Can't convert object to primitive value\")}},5031:function(t,e,n){var r=n(7751),o=n(9504),i=n(8480),a=n(3717),s=n(8551),u=o([].concat);t.exports=r(\"Reflect\",\"ownKeys\")||function(t){var e=i.f(s(t)),n=a.f;return n?u(e,n(t)):e}},8235:function(t,e,n){var r=n(9504),o=n(9297),i=SyntaxError,a=parseInt,s=String.fromCharCode,u=r(\"\".charAt),c=r(\"\".slice),l=r(/./.exec),f={'\\\\\"':'\"',\"\\\\\\\\\":\"\\\\\",\"\\\\/\":\"/\",\"\\\\b\":\"\\b\",\"\\\\f\":\"\\f\",\"\\\\n\":\"\\n\",\"\\\\r\":\"\\r\",\"\\\\t\":\"\\t\"},p=/^[\\da-f]{4}$/i,d=/^[\\u0000-\\u001F]$/;t.exports=function(t,e){for(var n=!0,r=\"\";e<t.length;){var h=u(t,e);if(\"\\\\\"===h){var v=c(t,e,e+2);if(o(f,v))r+=f[v],e+=2;else{if(\"\\\\u\"!==v)throw new i('Unknown escape sequence: \"'+v+'\"');var y=c(t,e+=2,e+4);if(!l(p,y))throw new i(\"Bad Unicode escape at: \"+e);r+=s(a(y,16)),e+=4}}else{if('\"'===h){n=!1,e++;break}if(l(d,h))throw new i(\"Bad control character in string literal at: \"+e);r+=h,e++}}if(n)throw new i(\"Unterminated string at: \"+e);return{value:r,end:e}}},9167:function(t,e,n){var r=n(4576);t.exports=r},1056:function(t,e,n){var r=n(4913).f;t.exports=function(t,e,n){n in t||r(t,n,{configurable:!0,get:function(){return e[n]},set:function(t){e[n]=t}})}},6682:function(t,e,n){var r=n(9565),o=n(8551),i=n(4901),a=n(2195),s=n(7323),u=TypeError;t.exports=function(t,e){var n=t.exec;if(i(n)){var c=r(n,t,e);return null!==c&&o(c),c}if(\"RegExp\"===a(t))return r(s,t,e);throw new u(\"RegExp#exec called on incompatible receiver\")}},7323:function(t,e,n){var r,o,i=n(9565),a=n(9504),s=n(655),u=n(7979),c=n(8429),l=n(5745),f=n(2360),p=n(1181).get,d=n(3635),h=n(8814),v=l(\"native-string-replace\",String.prototype.replace),y=RegExp.prototype.exec,g=y,m=a(\"\".charAt),b=a(\"\".indexOf),w=a(\"\".replace),x=a(\"\".slice),O=(o=/b*/g,i(y,r=/a/,\"a\"),i(y,o,\"a\"),0!==r.lastIndex||0!==o.lastIndex),E=c.BROKEN_CARET,S=void 0!==/()??/.exec(\"\")[1],k=function(t,e){for(var n=t.groups=f(null),r=0;r<e.length;r++){var o=e[r];n[o[0]]=t[o[1]]}};(O||S||E||d||h)&&(g=function(t){var e,n,r,o=this,a=p(o),c=s(t),l=a.raw;if(l)return l.lastIndex=o.lastIndex,e=i(g,l,c),o.lastIndex=l.lastIndex,e&&a.groups&&k(e,a.groups),e;var f=a.groups,d=E&&o.sticky,h=i(u,o),P=o.source,I=0,C=c;if(d){h=w(h,\"y\",\"\"),-1===b(h,\"g\")&&(h+=\"g\"),C=x(c,o.lastIndex);var A=o.lastIndex>0&&m(c,o.lastIndex-1);o.lastIndex>0&&(!o.multiline||o.multiline&&\"\\n\"!==A&&\"\\r\"!==A&&\"\\u2028\"!==A&&\"\\u2029\"!==A)&&(P=\"(?: (?:\"+P+\"))\",C=\" \"+C,I++),n=new RegExp(\"^(?:\"+P+\")\",h)}S&&(n=new RegExp(\"^\"+P+\"$(?!\\\\s)\",h)),O&&(r=o.lastIndex);var M=i(y,d?n:o,C);return d?M?(M.input=c,M[0]=x(M[0],I),M.index=o.lastIndex,o.lastIndex+=M[0].length):o.lastIndex=0:O&&M&&(o.lastIndex=o.global?M.index+M[0].length:r),S&&M&&M.length>1&&i(v,M[0],n,(function(){for(var t=1;t<arguments.length-2;t++)void 0===arguments[t]&&(M[t]=void 0)})),M&&f&&k(M,f),M}),t.exports=g},5213:function(t,e,n){var r=n(4576),o=n(9039),i=r.RegExp,a=!o((function(){var t=!0;try{i(\".\",\"d\")}catch(e){t=!1}var e={},n=\"\",r=t?\"dgimsy\":\"gimsy\",o=function(t,r){Object.defineProperty(e,t,{get:function(){return n+=r,!0}})},a={dotAll:\"s\",global:\"g\",ignoreCase:\"i\",multiline:\"m\",sticky:\"y\"};for(var s in t&&(a.hasIndices=\"d\"),a)o(s,a[s]);return Object.getOwnPropertyDescriptor(i.prototype,\"flags\").get.call(e)!==r||n!==r}));t.exports={correct:a}},7979:function(t,e,n){var r=n(8551);t.exports=function(){var t=r(this),e=\"\";return t.hasIndices&&(e+=\"d\"),t.global&&(e+=\"g\"),t.ignoreCase&&(e+=\"i\"),t.multiline&&(e+=\"m\"),t.dotAll&&(e+=\"s\"),t.unicode&&(e+=\"u\"),t.unicodeSets&&(e+=\"v\"),t.sticky&&(e+=\"y\"),e}},1034:function(t,e,n){var r=n(9565),o=n(9297),i=n(1625),a=n(5213),s=n(7979),u=RegExp.prototype;t.exports=a.correct?function(t){return t.flags}:function(t){return a.correct||!i(u,t)||o(t,\"flags\")?t.flags:r(s,t)}},8429:function(t,e,n){var r=n(9039),o=n(4576).RegExp,i=r((function(){var t=o(\"a\",\"y\");return t.lastIndex=2,null!==t.exec(\"abcd\")})),a=i||r((function(){return!o(\"a\",\"y\").sticky})),s=i||r((function(){var t=o(\"^r\",\"gy\");return t.lastIndex=2,null!==t.exec(\"str\")}));t.exports={BROKEN_CARET:s,MISSED_STICKY:a,UNSUPPORTED_Y:i}},3635:function(t,e,n){var r=n(9039),o=n(4576).RegExp;t.exports=r((function(){var t=o(\".\",\"s\");return!(t.dotAll&&t.test(\"\\n\")&&\"s\"===t.flags)}))},8814:function(t,e,n){var r=n(9039),o=n(4576).RegExp;t.exports=r((function(){var t=o(\"(?<a>b)\",\"g\");return\"b\"!==t.exec(\"b\").groups.a||\"bc\"!==\"b\".replace(t,\"$<a>c\")}))},7750:function(t,e,n){var r=n(4117),o=TypeError;t.exports=function(t){if(r(t))throw new o(\"Can't call method on \"+t);return t}},7633:function(t,e,n){var r=n(7751),o=n(2106),i=n(8227),a=n(3724),s=i(\"species\");t.exports=function(t){var e=r(t);a&&e&&!e[s]&&o(e,s,{configurable:!0,get:function(){return this}})}},687:function(t,e,n){var r=n(4913).f,o=n(9297),i=n(8227)(\"toStringTag\");t.exports=function(t,e,n){t&&!n&&(t=t.prototype),t&&!o(t,i)&&r(t,i,{configurable:!0,value:e})}},6119:function(t,e,n){var r=n(5745),o=n(3392),i=r(\"keys\");t.exports=function(t){return i[t]||(i[t]=o(t))}},7629:function(t,e,n){var r=n(6395),o=n(4576),i=n(9433),a=\"__core-js_shared__\",s=t.exports=o[a]||i(a,{});(s.versions||(s.versions=[])).push({version:\"3.49.0\",mode:r?\"pure\":\"global\",copyright:\"© 2013–2025 Denis Pushkarev (zloirock.ru), 2025–2026 CoreJS Company (core-js.io). All rights reserved.\",license:\"https://github.com/zloirock/core-js/blob/v3.49.0/LICENSE\",source:\"https://github.com/zloirock/core-js\"})},5745:function(t,e,n){var r=n(7629);t.exports=function(t,e){return r[t]||(r[t]=e||{})}},2293:function(t,e,n){var r=n(8551),o=n(5548),i=n(4117),a=n(8227)(\"species\");t.exports=function(t,e){var n,s=r(t).constructor;return void 0===s||i(n=r(s)[a])?e:o(n)}},8183:function(t,e,n){var r=n(9504),o=n(1291),i=n(655),a=n(7750),s=r(\"\".charAt),u=r(\"\".charCodeAt),c=r(\"\".slice),l=function(t){return function(e,n){var r,l,f=i(a(e)),p=o(n),d=f.length;return p<0||p>=d?t?\"\":void 0:(r=u(f,p))<55296||r>56319||p+1===d||(l=u(f,p+1))<56320||l>57343?t?s(f,p):r:t?c(f,p,p+2):l-56320+(r-55296<<10)+65536}};t.exports={codeAt:l(!1),charAt:l(!0)}},706:function(t,e,n){var r=n(350).PROPER,o=n(9039),i=n(7452);t.exports=function(t){return o((function(){return!!i[t]()||\"​…᠎\"!==\"​…᠎\"[t]()||r&&i[t].name!==t}))}},3802:function(t,e,n){var r=n(9504),o=n(7750),i=n(655),a=n(7452),s=r(\"\".replace),u=RegExp(\"^[\"+a+\"]+\"),c=RegExp(\"(^|[^\"+a+\"])[\"+a+\"]+$\"),l=function(t){return function(e){var n=i(o(e));return 1&t&&(n=s(n,u,\"\")),2&t&&(n=s(n,c,\"$1\")),n}};t.exports={start:l(1),end:l(2),trim:l(3)}},4495:function(t,e,n){var r=n(9519),o=n(9039),i=n(4576).String;t.exports=!!Object.getOwnPropertySymbols&&!o((function(){var t=Symbol(\"symbol detection\");return!i(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},8242:function(t,e,n){var r=n(9565),o=n(7751),i=n(8227),a=n(6840);t.exports=function(){var t=o(\"Symbol\"),e=t&&t.prototype,n=e&&e.valueOf,s=i(\"toPrimitive\");e&&!e[s]&&a(e,s,(function(t){return r(n,this)}),{arity:1})}},1296:function(t,e,n){var r=n(4495);t.exports=r&&!!Symbol.for&&!!Symbol.keyFor},1240:function(t,e,n){var r=n(9504);t.exports=r(1.1.valueOf)},5610:function(t,e,n){var r=n(1291),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},5397:function(t,e,n){var r=n(7055),o=n(7750);t.exports=function(t){return r(o(t))}},1291:function(t,e,n){var r=n(741);t.exports=function(t){var e=+t;return e!=e||0===e?0:r(e)}},8014:function(t,e,n){var r=n(1291),o=Math.min;t.exports=function(t){var e=r(t);return e>0?o(e,9007199254740991):0}},8981:function(t,e,n){var r=n(7750),o=Object;t.exports=function(t){return o(r(t))}},2777:function(t,e,n){var r=n(9565),o=n(34),i=n(757),a=n(5966),s=n(4270),u=n(8227),c=TypeError,l=u(\"toPrimitive\");t.exports=function(t,e){if(!o(t)||i(t))return t;var n,u=a(t,l);if(u){if(void 0===e&&(e=\"default\"),n=r(u,t,e),!o(n)||i(n))return n;throw new c(\"Can't convert object to primitive value\")}return void 0===e&&(e=\"number\"),s(t,e)}},6969:function(t,e,n){var r=n(2777),o=n(757);t.exports=function(t){var e=r(t,\"string\");return o(e)?e:e+\"\"}},2140:function(t,e,n){var r={};r[n(8227)(\"toStringTag\")]=\"z\",t.exports=\"[object z]\"===String(r)},655:function(t,e,n){var r=n(6955),o=String;t.exports=function(t){if(\"Symbol\"===r(t))throw new TypeError(\"Cannot convert a Symbol value to a string\");return o(t)}},6823:function(t){var e=String;t.exports=function(t){try{return e(t)}catch(t){return\"Object\"}}},3392:function(t,e,n){var r=n(9504),o=0,i=Math.random(),a=r(1.1.toString);t.exports=function(t){return\"Symbol(\"+(void 0===t?\"\":t)+\")_\"+a(++o+i,36)}},7040:function(t,e,n){var r=n(4495);t.exports=r&&!Symbol.sham&&\"symbol\"==typeof Symbol.iterator},8686:function(t,e,n){var r=n(3724),o=n(9039);t.exports=r&&o((function(){return 42!==Object.defineProperty((function(){}),\"prototype\",{value:42,writable:!1}).prototype}))},8622:function(t,e,n){var r=n(4576),o=n(4901),i=r.WeakMap;t.exports=o(i)&&/native code/.test(String(i))},511:function(t,e,n){var r=n(9167),o=n(9297),i=n(1951),a=n(4913).f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},1951:function(t,e,n){var r=n(8227);e.f=r},8227:function(t,e,n){var r=n(4576),o=n(5745),i=n(9297),a=n(3392),s=n(4495),u=n(7040),c=r.Symbol,l=o(\"wks\"),f=u?c.for||c:c&&c.withoutSetter||a;t.exports=function(t){return i(l,t)||(l[t]=s&&i(c,t)?c[t]:f(\"Symbol.\"+t)),l[t]}},7452:function(t){t.exports=\"\\t\\n\\v\\f\\r                 \\u2028\\u2029\\ufeff\"},8706:function(t,e,n){var r=n(6518),o=n(9039),i=n(4376),a=n(34),s=n(8981),u=n(6198),c=n(6837),l=n(4659),f=n(4527),p=n(1469),d=n(597),h=n(8227),v=n(9519),y=h(\"isConcatSpreadable\"),g=v>=51||!o((function(){var t=[];return t[y]=!1,t.concat()[0]!==t})),m=function(t){if(!a(t))return!1;var e=t[y];return void 0!==e?!!e:i(t)};r({target:\"Array\",proto:!0,arity:1,forced:!g||!d(\"concat\")},{concat:function(t){var e,n,r,o,i,a=s(this),d=p(a,0),h=0;for(e=-1,r=arguments.length;e<r;e++)if(m(i=-1===e?a:arguments[e]))for(o=u(i),c(h+o),n=0;n<o;n++,h++)n in i&&l(d,h,i[n]);else c(h+1),l(d,h++,i);return f(d,h),d}})},2008:function(t,e,n){var r=n(6518),o=n(9213).filter;r({target:\"Array\",proto:!0,forced:!n(597)(\"filter\")},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},3418:function(t,e,n){var r=n(6518),o=n(7916);r({target:\"Array\",stat:!0,forced:!n(4428)((function(t){Array.from(t)}))},{from:o})},4423:function(t,e,n){var r=n(6518),o=n(9617).includes,i=n(9039),a=n(6469),s=i((function(){return!Array(1).includes()})),u=i((function(){return[,1].includes(void 0,1)}));r({target:\"Array\",proto:!0,forced:s||u},{includes:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}}),a(\"includes\")},5276:function(t,e,n){var r=n(6518),o=n(7476),i=n(9617).indexOf,a=n(4598),s=o([].indexOf),u=!!s&&1/s([1],1,-0)<0;r({target:\"Array\",proto:!0,forced:u||!a(\"indexOf\")},{indexOf:function(t){var e=arguments.length>1?arguments[1]:void 0;return u?s(this,t,e)||0:i(this,t,e)}})},3792:function(t,e,n){var r=n(5397),o=n(6469),i=n(6269),a=n(1181),s=n(4913).f,u=n(1088),c=n(2529),l=n(6395),f=n(3724),p=\"Array Iterator\",d=a.set,h=a.getterFor(p);t.exports=u(Array,\"Array\",(function(t,e){d(this,{type:p,target:r(t),index:0,kind:e})}),(function(){var t=h(this),e=t.target,n=t.index++;if(!e||n>=e.length)return t.target=null,c(void 0,!0);switch(t.kind){case\"keys\":return c(n,!1);case\"values\":return c(e[n],!1)}return c([n,e[n]],!1)}),\"values\");var v=i.Arguments=i.Array;if(o(\"keys\"),o(\"values\"),o(\"entries\"),!l&&f&&\"values\"!==v.name)try{s(v,\"name\",{value:\"values\"})}catch(t){}},8598:function(t,e,n){var r=n(6518),o=n(9504),i=n(7055),a=n(5397),s=n(4598),u=o([].join);r({target:\"Array\",proto:!0,forced:i!==Object||!s(\"join\",\",\")},{join:function(t){return u(a(this),void 0===t?\",\":t)}})},2062:function(t,e,n){var r=n(6518),o=n(9213).map;r({target:\"Array\",proto:!0,forced:!n(597)(\"map\")},{map:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},2712:function(t,e,n){var r=n(6518),o=n(926).left,i=n(4598),a=n(9519);r({target:\"Array\",proto:!0,forced:!n(6193)&&a>79&&a<83||!i(\"reduce\")},{reduce:function(t){var e=arguments.length;return o(this,t,e,e>1?arguments[1]:void 0)}})},4782:function(t,e,n){var r=n(6518),o=n(4376),i=n(3517),a=n(34),s=n(5610),u=n(6198),c=n(5397),l=n(4659),f=n(4527),p=n(8227),d=n(597),h=n(7680),v=d(\"slice\"),y=p(\"species\"),g=Array,m=Math.max;r({target:\"Array\",proto:!0,forced:!v},{slice:function(t,e){var n,r,p,d=c(this),v=u(d),b=s(t,v),w=s(void 0===e?v:e,v);if(o(d)&&(n=d.constructor,(i(n)&&(n===g||o(n.prototype))||a(n)&&null===(n=n[y]))&&(n=void 0),n===g||void 0===n))return h(d,b,w);for(r=new(void 0===n?g:n)(m(w-b,0)),p=0;b<w;b++,p++)b in d&&l(r,p,d[b]);return f(r,p),r}})},6910:function(t,e,n){var r=n(6518),o=n(9504),i=n(9306),a=n(8981),s=n(6198),u=n(4606),c=n(655),l=n(9039),f=n(4488),p=n(4598),d=n(3709),h=n(3763),v=n(9519),y=n(3607),g=[],m=o(g.sort),b=o(g.push),w=l((function(){g.sort(void 0)})),x=l((function(){g.sort(null)})),O=p(\"sort\"),E=!l((function(){if(v)return v<70;if(!(d&&d>3)){if(h)return!0;if(y)return y<603;var t,e,n,r,o=\"\";for(t=65;t<76;t++){switch(e=String.fromCharCode(t),t){case 66:case 69:case 70:case 72:n=3;break;case 68:case 71:n=4;break;default:n=2}for(r=0;r<47;r++)g.push({k:e+r,v:n})}for(g.sort((function(t,e){return e.v-t.v})),r=0;r<g.length;r++)e=g[r].k.charAt(0),o.charAt(o.length-1)!==e&&(o+=e);return\"DGBEFHACIJK\"!==o}}));r({target:\"Array\",proto:!0,forced:w||!x||!O||!E},{sort:function(t){void 0!==t&&i(t);var e=a(this);if(E)return void 0===t?m(e):m(e,t);var n,r,o=[],l=s(e);for(r=0;r<l;r++)r in e&&b(o,e[r]);for(f(o,function(t){return function(e,n){if(void 0===n)return-1;if(void 0===e)return 1;if(void 0!==t)return+t(e,n)||0;var r=c(e),o=c(n);return r===o?0:r>o?1:-1}}(t)),n=s(o),r=0;r<n;)e[r]=o[r++];for(;r<l;)u(e,r++);return e}})},4554:function(t,e,n){var r=n(6518),o=n(8981),i=n(5610),a=n(1291),s=n(6198),u=n(4527),c=n(6837),l=n(1469),f=n(4659),p=n(4606),d=n(597)(\"splice\"),h=Math.max,v=Math.min;r({target:\"Array\",proto:!0,forced:!d},{splice:function(t,e){var n,r,d,y,g,m,b=o(this),w=s(b),x=i(t,w),O=arguments.length;for(0===O?n=r=0:1===O?(n=0,r=w-x):(n=O-2,r=v(h(a(e),0),w-x)),c(w+n-r),d=l(b,r),y=0;y<r;y++)(g=x+y)in b&&f(d,y,b[g]);if(u(d,r),n<r){for(y=x;y<w-r;y++)m=y+n,(g=y+r)in b?b[m]=b[g]:p(b,m);for(y=w;y>w-r+n;y--)p(b,y-1)}else if(n>r)for(y=w-r;y>x;y--)m=y+n-1,(g=y+r-1)in b?b[m]=b[g]:p(b,m);for(y=0;y<n;y++)b[y+x]=arguments[y+2];return u(b,w-r+n),d}})},739:function(t,e,n){var r=n(6518),o=n(9039),i=n(8981),a=n(2777);r({target:\"Date\",proto:!0,arity:1,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e,\"number\");return\"number\"!=typeof n||isFinite(n)?e.toISOString():null}})},9572:function(t,e,n){var r=n(9297),o=n(6840),i=n(3640),a=n(8227)(\"toPrimitive\"),s=Date.prototype;r(s,a)||o(s,a,i)},2010:function(t,e,n){var r=n(3724),o=n(350).EXISTS,i=n(9504),a=n(2106),s=Function.prototype,u=i(s.toString),c=/function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/,l=i(c.exec);r&&!o&&a(s,\"name\",{configurable:!0,get:function(){try{return l(c,u(this))[1]}catch(t){return\"\"}}})},3110:function(t,e,n){var r=n(6518),o=n(7751),i=n(8745),a=n(9565),s=n(9504),u=n(9039),c=n(4376),l=n(4901),f=n(5810),p=n(757),d=n(2195),h=n(655),v=n(7680),y=n(8235),g=n(3392),m=n(4495),b=n(7819),w=String,x=o(\"JSON\",\"stringify\"),O=s(/./.exec),E=s(\"\".charAt),S=s(\"\".charCodeAt),k=s(\"\".replace),P=s(\"\".slice),I=s([].push),C=s(1.1.toString),A=/[\\uD800-\\uDFFF]/g,M=/^[\\uD800-\\uDBFF]$/,D=/^[\\uDC00-\\uDFFF]$/,T=g(),N=T.length,j=!m||u((function(){var t=o(\"Symbol\")(\"stringify detection\");return\"[null]\"!==x([t])||\"{}\"!==x({a:t})||\"{}\"!==x(Object(t))})),R=u((function(){return'\"\\\\udf06\\\\ud834\"'!==x(\"\\udf06\\ud834\")||'\"\\\\udead\"'!==x(\"\\udead\")})),L=j?function(t,e){var n=v(arguments),r=K(e);if(l(r)||void 0!==t&&!p(t))return n[1]=function(t,e){if(l(r)&&(e=a(r,this,w(t),e)),!p(e))return e},i(x,null,n)}:x,B=function(t,e,n){var r=E(n,e-1),o=E(n,e+1);return O(M,t)&&!O(D,o)||O(D,t)&&!O(M,r)?\"\\\\u\"+C(S(t,0),16):t},K=function(t){if(l(t))return t;if(c(t)){for(var e=t.length,n=[],r=0;r<e;r++){var o=t[r];\"string\"==typeof o?I(n,o):\"number\"!=typeof o&&\"Number\"!==d(o)&&\"String\"!==d(o)||I(n,h(o))}var i=n.length,a=!0;return function(t,e){if(a)return a=!1,e;if(c(this))return e;for(var r=0;r<i;r++)if(n[r]===t)return e}}};x&&r({target:\"JSON\",stat:!0,arity:3,forced:j||R||!b},{stringify:function(t,e,n){var r=K(e),o=[],i=L(t,(function(t,e){var n=l(r)?a(r,this,w(t),e):e;return!b&&f(n)?T+(I(o,n.rawJSON)-1):n}),n);if(\"string\"!=typeof i)return i;if(R&&(i=k(i,A,B)),b)return i;for(var s=\"\",u=i.length,c=0;c<u;c++){var p=E(i,c);if('\"'===p){var d=y(i,++c).end-1,h=P(i,c,d);s+=P(h,0,N)===T?o[P(h,N)]:'\"'+h+'\"',c=d}else s+=p}return s}})},2892:function(t,e,n){var r=n(6518),o=n(6395),i=n(3724),a=n(4576),s=n(9167),u=n(9504),c=n(2796),l=n(9297),f=n(3167),p=n(1625),d=n(757),h=n(2777),v=n(9039),y=n(8480).f,g=n(7347).f,m=n(4913).f,b=n(1240),w=n(3802).trim,x=\"Number\",O=a[x],E=s[x],S=O.prototype,k=a.TypeError,P=u(\"\".slice),I=u(\"\".charCodeAt),C=function(t){var e,n,r,o,i,a,s,u,c=h(t,\"number\");if(d(c))throw new k(\"Cannot convert a Symbol value to a number\");if(\"string\"==typeof c&&c.length>2)if(c=w(c),43===(e=I(c,0))||45===e){if(88===(n=I(c,2))||120===n)return NaN}else if(48===e){switch(I(c,1)){case 66:case 98:r=2,o=49;break;case 79:case 111:r=8,o=55;break;default:return+c}for(a=(i=P(c,2)).length,s=0;s<a;s++)if((u=I(i,s))<48||u>o)return NaN;return parseInt(i,r)}return+c},A=c(x,!O(\" 0o1\")||!O(\"0b1\")||O(\"+0x1\")),M=function(t){var e,n=arguments.length<1?0:O(function(t){var e=h(t,\"number\");return\"bigint\"==typeof e?e:C(e)}(t));return p(S,e=this)&&v((function(){b(e)}))?f(Object(n),this,M):n};M.prototype=S,A&&!o&&(S.constructor=M),r({global:!0,constructor:!0,wrap:!0,forced:A},{Number:M});var D=function(t,e){for(var n,r=i?y(e):\"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,fromString,range\".split(\",\"),o=0;r.length>o;o++)l(e,n=r[o])&&!l(t,n)&&m(t,n,g(e,n))};o&&E&&D(s[x],E),(A||o)&&D(s[x],O)},2637:function(t,e,n){n(6518)({target:\"Number\",stat:!0},{isInteger:n(2087)})},9085:function(t,e,n){var r=n(6518),o=n(4213);r({target:\"Object\",stat:!0,arity:2,forced:Object.assign!==o},{assign:o})},7427:function(t,e,n){var r=n(6518),o=n(3724),i=n(2551),a=n(9306),s=n(8981),u=n(4913);o&&r({target:\"Object\",proto:!0,forced:i},{__defineGetter__:function(t,e){u.f(s(this),t,{get:a(e),enumerable:!0,configurable:!0})}})},3851:function(t,e,n){var r=n(6518),o=n(9039),i=n(5397),a=n(7347).f,s=n(3724);r({target:\"Object\",stat:!0,forced:!s||o((function(){a(1)})),sham:!s},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},1278:function(t,e,n){var r=n(6518),o=n(3724),i=n(5031),a=n(5397),s=n(7347),u=n(4659);r({target:\"Object\",stat:!0,sham:!o},{getOwnPropertyDescriptors:function(t){for(var e,n,r=a(t),o=s.f,c=i(r),l={},f=0;c.length>f;)void 0!==(n=o(r,e=c[f++]))&&u(l,e,n);return l}})},1480:function(t,e,n){var r=n(6518),o=n(9039),i=n(298).f;r({target:\"Object\",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},9773:function(t,e,n){var r=n(6518),o=n(4495),i=n(9039),a=n(3717),s=n(8981);r({target:\"Object\",stat:!0,forced:!o||i((function(){a.f(1)}))},{getOwnPropertySymbols:function(t){var e=a.f;return e?e(s(t)):[]}})},9432:function(t,e,n){var r=n(6518),o=n(8981),i=n(1072);r({target:\"Object\",stat:!0,forced:n(9039)((function(){i(1)}))},{keys:function(t){return i(o(t))}})},6099:function(t,e,n){var r=n(2140),o=n(6840),i=n(3179);r||o(Object.prototype,\"toString\",i,{unsafe:!0})},825:function(t,e,n){var r=n(6518),o=n(7751),i=n(8745),a=n(566),s=n(5548),u=n(8551),c=n(34),l=n(2360),f=n(9039),p=o(\"Reflect\",\"construct\"),d=Object.prototype,h=[].push,v=f((function(){function t(){}return!(p((function(){}),[],t)instanceof t)})),y=!f((function(){p((function(){}))})),g=v||y;r({target:\"Reflect\",stat:!0,forced:g,sham:g},{construct:function(t,e){s(t);var n=arguments.length<3?t:s(arguments[2]);if(u(e),y&&!v)return p(t,e,n);if(t===n){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var r=[null];return i(h,r,e),new(i(a,t,r))}var o=n.prototype,f=l(c(o)?o:d),g=i(t,f,e);return c(g)?g:f}})},4864:function(t,e,n){var r=n(3724),o=n(4576),i=n(9504),a=n(2796),s=n(3167),u=n(6699),c=n(2360),l=n(8480).f,f=n(1625),p=n(788),d=n(655),h=n(1034),v=n(8429),y=n(1056),g=n(6840),m=n(9039),b=n(9297),w=n(1181).enforce,x=n(7633),O=n(8227),E=n(3635),S=n(8814),k=O(\"match\"),P=o.RegExp,I=P.prototype,C=o.SyntaxError,A=i(I.exec),M=i(\"\".charAt),D=i(\"\".replace),T=i(\"\".indexOf),N=i(\"\".slice),j=/^\\?<[^\\s\\d!#%&*+<=>@^][^\\s!#%&*+<=>@^]*>/,R=/a/g,L=/a/g,B=new P(R)!==R,K=v.MISSED_STICKY,_=v.UNSUPPORTED_Y;if(a(\"RegExp\",r&&(!B||K||E||S||m((function(){return L[k]=!1,P(R)!==R||P(L)===L||\"/a/i\"!==String(P(R,\"i\"))}))))){for(var F=function(t,e){var n,r,o,i,a,l,v=f(I,this),y=p(t),g=void 0===e,m=[],x=t;if(!v&&y&&g&&t.constructor===F)return t;if((y||f(I,t))&&(t=t.source,g&&(e=h(x))),t=void 0===t?\"\":d(t),e=void 0===e?\"\":d(e),x=t,E&&\"dotAll\"in R&&(r=!!e&&T(e,\"s\")>-1)&&(e=D(e,/s/g,\"\")),n=e,K&&\"sticky\"in R&&(o=!!e&&T(e,\"y\")>-1)&&_&&(e=D(e,/y/g,\"\")),S&&(i=function(t){for(var e,n=t.length,r=0,o=\"\",i=[],a=c(null),s=!1,u=!1,l=0,f=\"\";r<n;r++){if(\"\\\\\"===(e=M(t,r))){if(e+=M(t,++r),!u&&\"\\\\\"===M(e,1)){o+=\"\\\\x5c\";continue}}else if(\"]\"===e)s=!1;else if(!s)switch(!0){case\"[\"===e:s=!0;break;case\"(\"===e:o+=e,A(j,N(t,r+1))?(r+=2,u=!0,l++):\"?\"!==M(t,r+1)&&l++;continue;case\">\"===e&&u:if(\"\"===f||b(a,f))throw new C(\"Invalid capture group name\");a[f]=!0,i[i.length]=[f,l],u=!1,f=\"\";continue}u?f+=e:o+=e}for(var p=0;p<i.length;p++)for(var d=\"\\\\k<\"+i[p][0]+\">\",h=\"\\\\\"+i[p][1];T(o,d)>-1;)o=D(o,d,h);return[o,i]}(t),t=i[0],m=i[1]),a=s(P(t,e),v?this:I,F),(r||o||m.length)&&(l=w(a),r&&(l.dotAll=!0,l.raw=F(function(t){for(var e,n=t.length,r=0,o=\"\",i=!1;r<n;r++)\"\\\\\"!==(e=M(t,r))?i||\".\"!==e?(\"[\"===e?i=!0:\"]\"===e&&(i=!1),o+=e):o+=\"[\\\\s\\\\S]\":o+=e+M(t,++r);return o}(t),n)),o&&(l.sticky=!0),m.length&&(l.groups=m)),t!==x)try{u(a,\"source\",\"\"===x?\"(?:)\":x)}catch(t){}return a},U=l(P),H=0;U.length>H;)y(F,P,U[H++]);I.constructor=F,F.prototype=I,g(o,\"RegExp\",F,{constructor:!0})}x(\"RegExp\")},7495:function(t,e,n){var r=n(6518),o=n(7323);r({target:\"RegExp\",proto:!0,forced:/./.exec!==o},{exec:o})},8781:function(t,e,n){var r=n(350).PROPER,o=n(6840),i=n(8551),a=n(655),s=n(9039),u=n(1034),c=\"toString\",l=RegExp.prototype,f=l[c],p=s((function(){return\"/a/b\"!==f.call({source:\"a\",flags:\"b\"})})),d=r&&f.name!==c;(p||d)&&o(l,c,(function(){var t=i(this);return\"/\"+a(t.source)+\"/\"+a(u(t))}),{unsafe:!0})},1699:function(t,e,n){var r=n(6518),o=n(9504),i=n(5749),a=n(7750),s=n(655),u=n(1436),c=o(\"\".indexOf);r({target:\"String\",proto:!0,forced:!u(\"includes\")},{includes:function(t){return!!~c(s(a(this)),s(i(t)),arguments.length>1?arguments[1]:void 0)}})},7764:function(t,e,n){var r=n(8183).charAt,o=n(655),i=n(1181),a=n(1088),s=n(2529),u=\"String Iterator\",c=i.set,l=i.getterFor(u);a(String,\"String\",(function(t){c(this,{type:u,string:o(t),index:0})}),(function(){var t,e=l(this),n=e.string,o=e.index;return o>=n.length?s(void 0,!0):(t=r(n,o),e.index+=t.length,s(t,!1))}))},8543:function(t,e,n){var r=n(6518),o=n(9565),i=n(7476),a=n(3994),s=n(2529),u=n(7750),c=n(8014),l=n(655),f=n(8551),p=n(34),d=n(2195),h=n(788),v=n(1034),y=n(5966),g=n(6840),m=n(9039),b=n(8227),w=n(2293),x=n(7829),O=n(6682),E=n(1181),S=n(6395),k=b(\"matchAll\"),P=\"RegExp String\",I=P+\" Iterator\",C=E.set,A=E.getterFor(I),M=RegExp.prototype,D=TypeError,T=i(\"\".indexOf),N=i(\"\".matchAll),j=!!N&&!m((function(){N(\"a\",/./)})),R=a((function(t,e,n,r){C(this,{type:I,regexp:t,string:e,global:n,unicode:r,done:!1})}),P,(function(){var t=A(this);if(t.done)return s(void 0,!0);var e=t.regexp,n=t.string,r=O(e,n);return null===r?(t.done=!0,s(void 0,!0)):t.global?(\"\"===l(r[0])&&(e.lastIndex=x(n,c(e.lastIndex),t.unicode)),s(r,!1)):(t.done=!0,s(r,!1))})),L=function(t){var e,n,r,o=f(this),i=l(t),a=w(o,RegExp),s=l(v(o));return e=new a(a===RegExp?o.source:o,s),n=!!~T(s,\"g\"),r=!!~T(s,\"u\")||!!~T(s,\"v\"),e.lastIndex=c(o.lastIndex),new R(e,i,n,r)};r({target:\"String\",proto:!0,forced:j},{matchAll:function(t){var e,n,r,i,a=u(this);if(p(t)){if(h(t)&&(e=l(u(v(t))),!~T(e,\"g\")))throw new D(\"`.matchAll` does not allow non-global regexes\");if(j)return N(a,t);if(void 0===(r=y(t,k))&&S&&\"RegExp\"===d(t)&&(r=L),r)return o(r,t,a)}else if(j)return N(a,t);return n=l(a),i=new RegExp(t,\"g\"),S?o(L,i,n):i[k](n)}}),S||k in M||g(M,k,L)},1761:function(t,e,n){var r=n(9565),o=n(9504),i=n(9228),a=n(8551),s=n(34),u=n(8014),c=n(655),l=n(7750),f=n(5966),p=n(7829),d=n(1034),h=n(6682),v=o(\"\".indexOf);i(\"match\",(function(t,e,n){return[function(e){var n=l(this),o=s(e)?f(e,t):void 0;return o?r(o,e,n):new RegExp(e)[t](c(n))},function(t){var r=a(this),o=c(t),i=n(e,r,o);if(i.done)return i.value;var s=c(d(r));if(!~v(s,\"g\"))return h(r,o);var l=!!~v(s,\"u\")||!!~v(s,\"v\");r.lastIndex=0;for(var f,y=[],g=0;null!==(f=h(r,o));){var m=c(f[0]);y[g]=m,\"\"===m&&(r.lastIndex=p(o,u(r.lastIndex),l)),g++}return 0===g?null:y}]}))},5440:function(t,e,n){var r=n(8745),o=n(9565),i=n(9504),a=n(9228),s=n(9039),u=n(8551),c=n(4901),l=n(34),f=n(1291),p=n(8014),d=n(655),h=n(7750),v=n(7829),y=n(5966),g=n(2478),m=n(1034),b=n(6682),w=n(8227)(\"replace\"),x=Math.max,O=Math.min,E=i([].concat),S=i([].push),k=i(\"\".indexOf),P=i(\"\".slice),I=\"$0\"===\"a\".replace(/./,\"$0\"),C=!!/./[w]&&\"\"===/./[w](\"a\",\"$0\");a(\"replace\",(function(t,e,n){var i=C?\"$\":\"$0\";return[function(t,n){var r=h(this),i=l(t)?y(t,w):void 0;return i?o(i,t,r,n):o(e,d(r),t,n)},function(t,o){var a=u(this),s=d(t),l=c(o);l||(o=d(o));var h=d(m(a));if(\"string\"==typeof o&&!~k(o,i)&&!~k(o,\"$<\")&&!~k(h,\"y\")){var y=n(e,a,s,o);if(y.done)return y.value}var w,I=!!~k(h,\"g\");I&&(w=!!~k(h,\"u\")||!!~k(h,\"v\"),a.lastIndex=0);for(var C,A=[];null!==(C=b(a,s))&&(S(A,C),I);)\"\"===d(C[0])&&(a.lastIndex=v(s,p(a.lastIndex),w));for(var M,D=\"\",T=0,N=0;N<A.length;N++){for(var j,R=d((C=A[N])[0]),L=x(O(f(C.index),s.length),0),B=[],K=1;K<C.length;K++)S(B,void 0===(M=C[K])?M:String(M));var _=C.groups;if(l){var F=E([R],B,L,s);void 0!==_&&S(F,_),j=d(r(o,void 0,F))}else j=g(R,s,L,B,_,o);L>=T&&(D+=P(s,T,L)+j,T=L+R.length)}return D+P(s,T)}]}),!!s((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:\"7\"},t},\"7\"!==\"\".replace(t,\"$<a>\")}))||!I||C)},744:function(t,e,n){var r=n(9565),o=n(9504),i=n(9228),a=n(8551),s=n(34),u=n(7750),c=n(2293),l=n(7829),f=n(8014),p=n(655),d=n(5966),h=n(1034),v=n(6682),y=n(8429),g=n(9039),m=y.UNSUPPORTED_Y,b=Math.min,w=o([].push),x=o(\"\".slice),O=o(\"\".indexOf),E=!g((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n=\"ab\".split(t);return 2!==n.length||\"a\"!==n[0]||\"b\"!==n[1]})),S=\"c\"===\"abbc\".split(/(b)*/)[1]||4!==\"test\".split(/(?:)/,-1).length||2!==\"ab\".split(/(?:ab)*/).length||4!==\".\".split(/(.?)(.?)/).length||\".\".split(/()()/).length>1||\"\".split(/.?/).length;i(\"split\",(function(t,e,n){var o=\"0\".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:r(e,this,t,n)}:e;return[function(e,n){var i=u(this),a=s(e)?d(e,t):void 0;return a?r(a,e,i,n):r(o,p(i),e,n)},function(t,r){var i=a(this),s=p(t);if(!S){var u=n(o,i,s,r,o!==e);if(u.done)return u.value}var d=c(i,RegExp),y=p(h(i)),g=!!~O(y,\"u\")||!!~O(y,\"v\");m?~O(y,\"g\")||(y+=\"g\"):~O(y,\"y\")||(y+=\"y\");var E=new d(m?\"^(?:\"+i.source+\")\":i,y),k=void 0===r?4294967295:r>>>0;if(0===k)return[];if(0===s.length)return null===v(E,s)?[s]:[];for(var P=0,I=0,C=[];I<s.length;){E.lastIndex=m?0:I;var A,M=v(E,m?x(s,I):s);if(null===M||(A=b(f(E.lastIndex+(m?I:0)),s.length))===P)I=l(s,I,g);else{if(w(C,x(s,P,I)),C.length===k)return C;for(var D=1;D<=M.length-1;D++)if(w(C,M[D]),C.length===k)return C;I=P=A}}return w(C,x(s,P)),C}]}),S||!E,m)},2762:function(t,e,n){var r=n(6518),o=n(3802).trim;r({target:\"String\",proto:!0,forced:n(706)(\"trim\")},{trim:function(){return o(this)}})},6761:function(t,e,n){var r=n(6518),o=n(4576),i=n(9565),a=n(9504),s=n(6395),u=n(3724),c=n(4495),l=n(9039),f=n(9297),p=n(1625),d=n(8551),h=n(5397),v=n(6969),y=n(655),g=n(6980),m=n(2360),b=n(1072),w=n(8480),x=n(298),O=n(3717),E=n(7347),S=n(4913),k=n(6801),P=n(8773),I=n(6840),C=n(2106),A=n(5745),M=n(6119),D=n(421),T=n(3392),N=n(8227),j=n(1951),R=n(511),L=n(8242),B=n(687),K=n(1181),_=n(9213).forEach,F=M(\"hidden\"),U=\"Symbol\",H=\"prototype\",$=K.set,G=K.getterFor(U),V=Object[H],z=o.Symbol,J=z&&z[H],Y=o.RangeError,W=o.TypeError,q=o.QObject,X=E.f,Q=S.f,Z=x.f,tt=P.f,et=a([].push),nt=A(\"symbols\"),rt=A(\"op-symbols\"),ot=A(\"wks\"),it=!q||!q[H]||!q[H].findChild,at=function(t,e,n){var r=X(V,e);return r&&delete V[e],Q(t,e,n),r&&t!==V&&Q(V,e,r),t},st=u&&l((function(){return 7!==m(Q({},\"a\",{get:function(){return Q(this,\"a\",{value:7}).a}})).a}))?at:Q,ut=function(t,e){var n=nt[t]=m(J);return $(n,{type:U,tag:t,description:e}),u||(n.description=e),n},ct=function(t,e,n){t===V&&ct(rt,e,n),d(t);var r=v(e);return d(n),f(nt,r)?((\"enumerable\"in n?!n.enumerable:!f(t,r)||f(t,F)&&t[F][r])?(f(t,F)||Q(t,F,g(1,m(null))),t[F][r]=!0):(f(t,F)&&t[F][r]&&(t[F][r]=!1),n=m(n,{enumerable:g(0,!1)})),st(t,r,n)):Q(t,r,n)},lt=function(t,e){d(t);var n=h(e),r=b(n).concat(ht(n));return _(r,(function(e){u&&!i(ft,n,e)||ct(t,e,n[e])})),t},ft=function(t){var e=v(t),n=i(tt,this,e);return!(this===V&&f(nt,e)&&!f(rt,e))&&(!(n||!f(this,e)||!f(nt,e)||f(this,F)&&this[F][e])||n)},pt=function(t,e){var n=h(t),r=v(e);if(n!==V||!f(nt,r)||f(rt,r)){var o=X(n,r);return!o||!f(nt,r)||f(n,F)&&n[F][r]||(o.enumerable=!0),o}},dt=function(t){var e=Z(h(t)),n=[];return _(e,(function(t){f(nt,t)||f(D,t)||et(n,t)})),n},ht=function(t){var e=t===V,n=Z(e?rt:h(t)),r=[];return _(n,(function(t){!f(nt,t)||e&&!f(V,t)||et(r,nt[t])})),r};c||(z=function(){if(p(J,this))throw new W(\"Symbol is not a constructor\");var t=arguments.length&&void 0!==arguments[0]?y(arguments[0]):void 0,e=T(t),n=function(t){var r=void 0===this?o:this;r===V&&i(n,rt,t),f(r,F)&&f(r[F],e)&&(r[F][e]=!1);var a=g(1,t);try{st(r,e,a)}catch(t){if(!(t instanceof Y))throw t;at(r,e,a)}};return u&&it&&st(V,e,{configurable:!0,set:n}),ut(e,t)},I(J=z[H],\"toString\",(function(){return G(this).tag})),I(z,\"withoutSetter\",(function(t){return ut(T(t),t)})),P.f=ft,S.f=ct,k.f=lt,E.f=pt,w.f=x.f=dt,O.f=ht,j.f=function(t){return ut(N(t),t)},u&&(C(J,\"description\",{configurable:!0,get:function(){return G(this).description}}),s||I(V,\"propertyIsEnumerable\",ft,{unsafe:!0}))),r({global:!0,constructor:!0,wrap:!0,forced:!c,sham:!c},{Symbol:z}),_(b(ot),(function(t){R(t)})),r({target:U,stat:!0,forced:!c},{useSetter:function(){it=!0},useSimple:function(){it=!1}}),r({target:\"Object\",stat:!0,forced:!c,sham:!u},{create:function(t,e){return void 0===e?m(t):lt(m(t),e)},defineProperty:ct,defineProperties:lt,getOwnPropertyDescriptor:pt}),r({target:\"Object\",stat:!0,forced:!c},{getOwnPropertyNames:dt}),L(),B(z,U),D[F]=!0},9463:function(t,e,n){var r=n(6518),o=n(3724),i=n(4576),a=n(9565),s=n(9504),u=n(9297),c=n(4901),l=n(1625),f=n(655),p=n(2106),d=n(7740),h=i.Symbol,v=h&&h.prototype;if(o&&c(h)&&(!(\"description\"in v)||void 0!==h().description)){var y={},g=function(){var t=arguments.length<1||void 0===arguments[0]?void 0:f(arguments[0]),e=l(v,this)?new h(t):void 0===t?h():h(t);return\"\"===t&&(y[e]=!0),e};d(g,h);var m=g.for;g.for={for:function(t){var e=f(t),n=a(m,this,e);return\"\"===e&&(y[n]=!0),n}}.for,g.prototype=v,v.constructor=g;var b=\"Symbol(description detection)\"===String(h(\"description detection\")),w=s(v.valueOf),x=s(v.toString),O=/^Symbol\\((.*)\\)[^)]+$/,E=s(\"\".replace),S=s(\"\".slice);p(v,\"description\",{configurable:!0,get:function(){var t=w(this);if(u(y,t))return\"\";var e=x(t),n=b?S(e,7,-1):E(e,O,\"$1\");return\"\"===n?void 0:n}}),r({global:!0,constructor:!0,forced:!0},{Symbol:g})}},1510:function(t,e,n){var r=n(6518),o=n(7751),i=n(9297),a=n(655),s=n(5745),u=n(1296),c=s(\"string-to-symbol-registry\"),l=s(\"symbol-to-string-registry\");r({target:\"Symbol\",stat:!0,forced:!u},{for:function(t){var e=a(t);if(i(c,e))return c[e];var n=o(\"Symbol\")(e);return c[e]=n,l[n]=e,n}})},2259:function(t,e,n){n(511)(\"iterator\")},2675:function(t,e,n){n(6761),n(1510),n(7812),n(3110),n(9773)},7812:function(t,e,n){var r=n(6518),o=n(9297),i=n(757),a=n(6823),s=n(5745),u=n(1296),c=s(\"symbol-to-string-registry\");r({target:\"Symbol\",stat:!0,forced:!u},{keyFor:function(t){if(!i(t))throw new TypeError(a(t)+\" is not a symbol\");if(o(c,t))return c[t]}})},5700:function(t,e,n){var r=n(511),o=n(8242);r(\"toPrimitive\"),o()},8344:function(t,e,n){n(8543)},3500:function(t,e,n){var r=n(4576),o=n(7400),i=n(9296),a=n(235),s=n(6699),u=function(t){if(t&&t.forEach!==a)try{s(t,\"forEach\",a)}catch(e){t.forEach=a}};for(var c in o)o[c]&&u(r[c]&&r[c].prototype);u(i)},2953:function(t,e,n){var r=n(4576),o=n(7400),i=n(9296),a=n(3792),s=n(6699),u=n(687),c=n(8227)(\"iterator\"),l=a.values,f=function(t,e){if(t){if(t[c]!==l)try{s(t,c,l)}catch(e){t[c]=l}if(u(t,e,!0),o[e])for(var n in a)if(t[n]!==a[n])try{s(t,n,a[n])}catch(e){t[n]=a[n]}}};for(var p in o)f(r[p]&&r[p].prototype,p);f(i,\"DOMTokenList\")}},e={};function n(r){var o=e[r];if(void 0!==o)return o.exports;var i=e[r]={exports:{}};return t[r].call(i.exports,i,i.exports,n),i.exports}n.d=function(t,e){for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.g=function(){if(\"object\"==typeof globalThis)return globalThis;try{return this||new Function(\"return this\")()}catch(t){if(\"object\"==typeof window)return window}}(),n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})};var r={};function o(t){return function(t){if(Array.isArray(t))return a(t)}(t)||function(t){if(\"undefined\"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t[\"@@iterator\"])return Array.from(t)}(t)||i(t)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function i(t,e){if(t){if(\"string\"==typeof t)return a(t,e);var n={}.toString.call(t).slice(8,-1);return\"Object\"===n&&t.constructor&&(n=t.constructor.name),\"Map\"===n||\"Set\"===n?Array.from(t):\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?a(t,e):void 0}}function a(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function s(t){return s=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},s(t)}function u(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,l(r.key),r)}}function c(t,e,n){return(e=l(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function l(t){var e=function(t,e){if(\"object\"!=s(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e||\"default\");if(\"object\"!=s(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"==s(e)?e:e+\"\"}n.r(r),n.d(r,{SimpleKeyboard:function(){return T},default:function(){return N}}),n(5276),n(8598),n(4782),n(4554),n(2010),n(7427),n(6099),n(7495),n(8781),n(5440),n(744),n(2762),\"undefined\"==typeof Element||\"remove\"in Element.prototype||(Element.prototype.remove=function(){this.parentNode&&this.parentNode.removeChild(this)}),\"undefined\"!=typeof self&&\"document\"in self&&((!(\"classList\"in document.createElement(\"_\"))||document.createElementNS&&!(\"classList\"in document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\")))&&function(t){if(\"Element\"in t){var e=\"classList\",n=\"prototype\",r=t.Element[n],o=Object,i=String[n].trim||function(){return this.replace(/^\\s+|\\s+$/g,\"\")},a=Array[n].indexOf||function(t){for(var e=0,n=this.length;e<n;e++)if(e in this&&this[e]===t)return e;return-1},s=function(t,e){this.name=t,this.code=DOMException[t],this.message=e},u=function(t,e){if(\"\"===e)throw new s(\"SYNTAX_ERR\",\"The token must not be empty.\");if(/\\s/.test(e))throw new s(\"INVALID_CHARACTER_ERR\",\"The token must not contain space characters.\");return a.call(t,e)},c=function(t){for(var e=i.call(t.getAttribute(\"class\")||\"\"),n=e?e.split(/\\s+/):[],r=0,o=n.length;r<o;r++)this.push(n[r]);this._updateClassName=function(){t.setAttribute(\"class\",this.toString())}},l=c[n]=[],f=function(){return new c(this)};if(s[n]=Error[n],l.item=function(t){return this[t]||null},l.contains=function(t){return~u(this,t+\"\")},l.add=function(){var t,e=arguments,n=0,r=e.length,o=!1;do{~u(this,t=e[n]+\"\")||(this.push(t),o=!0)}while(++n<r);o&&this._updateClassName()},l.remove=function(){var t,e,n=arguments,r=0,o=n.length,i=!1;do{for(e=u(this,t=n[r]+\"\");~e;)this.splice(e,1),i=!0,e=u(this,t)}while(++r<o);i&&this._updateClassName()},l.toggle=function(t,e){var n=this.contains(t),r=n?!0!==e&&\"remove\":!1!==e&&\"add\";return r&&this[r](t),!0===e||!1===e?e:!n},l.replace=function(t,e){var n=u(t+\"\");~n&&(this.splice(n,1,e),this._updateClassName())},l.toString=function(){return this.join(\" \")},o.defineProperty){var p={get:f,enumerable:!0,configurable:!0};try{o.defineProperty(r,e,p)}catch(t){void 0!==t.number&&-2146823252!==t.number||(p.enumerable=!1,o.defineProperty(r,e,p))}}else o[n].__defineGetter__&&r.__defineGetter__(e,f)}}(self),function(){var t=document.createElement(\"_\");if(t.classList.add(\"c1\",\"c2\"),!t.classList.contains(\"c2\")){var e=function(t){var e=DOMTokenList.prototype[t];DOMTokenList.prototype[t]=function(t){var n,r=arguments.length;for(n=0;n<r;n++)t=arguments[n],e.call(this,t)}};e(\"add\"),e(\"remove\")}if(t.classList.toggle(\"c3\",!1),t.classList.contains(\"c3\")){var n=DOMTokenList.prototype.toggle;DOMTokenList.prototype.toggle=function(t,e){return 1 in arguments&&!this.contains(t)==!e?e:n.call(this,t)}}\"replace\"in document.createElement(\"_\").classList||(DOMTokenList.prototype.replace=function(t,e){var n=this.toString().split(\" \"),r=n.indexOf(t+\"\");~r&&(n=n.slice(r),this.remove.apply(this,n),this.add(e),this.add.apply(this,n.slice(1)))}),t=null}()),n(2675),n(9463),n(2259),n(5700),n(8706),n(2008),n(3418),n(4423),n(3792),n(2062),n(6910),n(739),n(9572),n(2892),n(9085),n(3851),n(1278),n(9432),n(4864),n(1699),n(7764),n(8344),n(3500),n(2953),n(2712),n(2637),n(1480),n(825),n(1761);var f=function(){return t=function t(e){var n=e.getOptions,r=e.getCaretPosition,o=e.getCaretPositionEnd,i=e.dispatch;!function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,t),c(this,\"getOptions\",void 0),c(this,\"getCaretPosition\",void 0),c(this,\"getCaretPositionEnd\",void 0),c(this,\"dispatch\",void 0),c(this,\"maxLengthReached\",void 0),c(this,\"isStandardButton\",(function(t){return t&&!(\"{\"===t[0]&&\"}\"===t[t.length-1])})),this.getOptions=n,this.getCaretPosition=r,this.getCaretPositionEnd=o,this.dispatch=i,t.bindMethods(t,this)},e=[{key:\"getButtonType\",value:function(t){return t.includes(\"{\")&&t.includes(\"}\")&&\"{//}\"!==t?\"functionBtn\":\"standardBtn\"}},{key:\"getButtonClass\",value:function(t){var e=this.getButtonType(t),n=t.replace(\"{\",\"\").replace(\"}\",\"\"),r=\"\";return\"standardBtn\"!==e&&(r=\" hg-button-\".concat(n)),\"hg-\".concat(e).concat(r)}},{key:\"getDefaultDiplay\",value:function(){return{\"{bksp}\":\"backspace\",\"{backspace}\":\"backspace\",\"{enter}\":\"< enter\",\"{shift}\":\"shift\",\"{shiftleft}\":\"shift\",\"{shiftright}\":\"shift\",\"{alt}\":\"alt\",\"{s}\":\"shift\",\"{tab}\":\"tab\",\"{lock}\":\"caps\",\"{capslock}\":\"caps\",\"{accept}\":\"Submit\",\"{space}\":\" \",\"{//}\":\" \",\"{esc}\":\"esc\",\"{escape}\":\"esc\",\"{f1}\":\"f1\",\"{f2}\":\"f2\",\"{f3}\":\"f3\",\"{f4}\":\"f4\",\"{f5}\":\"f5\",\"{f6}\":\"f6\",\"{f7}\":\"f7\",\"{f8}\":\"f8\",\"{f9}\":\"f9\",\"{f10}\":\"f10\",\"{f11}\":\"f11\",\"{f12}\":\"f12\",\"{numpaddivide}\":\"/\",\"{numlock}\":\"lock\",\"{arrowup}\":\"↑\",\"{arrowleft}\":\"←\",\"{arrowdown}\":\"↓\",\"{arrowright}\":\"→\",\"{prtscr}\":\"print\",\"{scrolllock}\":\"scroll\",\"{pause}\":\"pause\",\"{insert}\":\"ins\",\"{home}\":\"home\",\"{pageup}\":\"up\",\"{delete}\":\"del\",\"{forwarddelete}\":\"del\",\"{end}\":\"end\",\"{pagedown}\":\"down\",\"{numpadmultiply}\":\"*\",\"{numpadsubtract}\":\"-\",\"{numpadadd}\":\"+\",\"{numpadenter}\":\"enter\",\"{period}\":\".\",\"{numpaddecimal}\":\".\",\"{numpad0}\":\"0\",\"{numpad1}\":\"1\",\"{numpad2}\":\"2\",\"{numpad3}\":\"3\",\"{numpad4}\":\"4\",\"{numpad5}\":\"5\",\"{numpad6}\":\"6\",\"{numpad7}\":\"7\",\"{numpad8}\":\"8\",\"{numpad9}\":\"9\"}}},{key:\"getButtonDisplayName\",value:function(t,e){return(e=arguments.length>2&&void 0!==arguments[2]&&arguments[2]?Object.assign({},this.getDefaultDiplay(),e):e||this.getDefaultDiplay())[t]||t}},{key:\"getUpdatedInput\",value:function(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:n,o=arguments.length>4&&void 0!==arguments[4]&&arguments[4],i=this.getOptions(),a=[n,r,o],s=e;return(\"{bksp}\"===t||\"{backspace}\"===t)&&s.length>0?s=this.removeAt.apply(this,[s].concat(a)):(\"{delete}\"===t||\"{forwarddelete}\"===t)&&s.length>0?s=this.removeForwardsAt.apply(this,[s].concat(a)):\"{space}\"===t?s=this.addStringAt.apply(this,[s,\" \"].concat(a)):\"{tab}\"!==t||\"boolean\"==typeof i.tabCharOnTab&&!1===i.tabCharOnTab?\"{enter}\"!==t&&\"{numpadenter}\"!==t||!i.newLineOnEnter?t.includes(\"numpad\")&&Number.isInteger(Number(t[t.length-2]))?s=this.addStringAt.apply(this,[s,t[t.length-2]].concat(a)):\"{numpaddivide}\"===t?s=this.addStringAt.apply(this,[s,\"/\"].concat(a)):\"{numpadmultiply}\"===t?s=this.addStringAt.apply(this,[s,\"*\"].concat(a)):\"{numpadsubtract}\"===t?s=this.addStringAt.apply(this,[s,\"-\"].concat(a)):\"{numpadadd}\"===t?s=this.addStringAt.apply(this,[s,\"+\"].concat(a)):\"{numpaddecimal}\"===t?s=this.addStringAt.apply(this,[s,\".\"].concat(a)):\"{\"===t||\"}\"===t?s=this.addStringAt.apply(this,[s,t].concat(a)):t.includes(\"{\")||t.includes(\"}\")||(s=this.addStringAt.apply(this,[s,t].concat(a))):s=this.addStringAt.apply(this,[s,\"\\n\"].concat(a)):s=this.addStringAt.apply(this,[s,\"\\t\"].concat(a)),i.debug&&console.log(\"Input will be: \"+s),s}},{key:\"updateCaretPos\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=this.updateCaretPosAction(t,e);this.dispatch((function(t){t.setCaretPosition(n)}))}},{key:\"updateCaretPosAction\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=this.getOptions(),r=this.getCaretPosition();return null!=r&&(e?r>0&&(r-=t):r+=t),n.debug&&console.log(\"Caret at:\",r),r}},{key:\"addStringAt\",value:function(t,e){var n,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.length,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:t.length,i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];return r||0===r?(n=[t.slice(0,r),e,t.slice(o)].join(\"\"),this.isMaxLengthReached()||i&&this.updateCaretPos(e.length)):n=t+e,n}},{key:\"removeAt\",value:function(t){var e,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t.length,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.length,o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(0===n&&0===r)return t;if(n===r){var i=/([\\uD800-\\uDBFF][\\uDC00-\\uDFFF])/g;n&&n>=0?t.substring(n-2,n).match(i)?(e=t.substr(0,n-2)+t.substr(n),o&&this.updateCaretPos(2,!0)):(e=t.substr(0,n-1)+t.substr(n),o&&this.updateCaretPos(1,!0)):t.slice(-2).match(i)?(e=t.slice(0,-2),o&&this.updateCaretPos(2,!0)):(e=t.slice(0,-1),o&&this.updateCaretPos(1,!0))}else e=t.slice(0,n)+t.slice(r),o&&this.dispatch((function(t){t.setCaretPosition(n)}));return e}},{key:\"removeForwardsAt\",value:function(t){var e,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t.length,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.length,o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return null!=t&&t.length&&null!==n?(n===r?e=t.substring(n,n+2).match(/([\\uD800-\\uDBFF][\\uDC00-\\uDFFF])/g)?t.substr(0,n)+t.substr(n+2):t.substr(0,n)+t.substr(n+1):(e=t.slice(0,n)+t.slice(r),o&&this.dispatch((function(t){t.setCaretPosition(n)}))),e):t}},{key:\"handleMaxLength\",value:function(t,e){var n=this.getOptions(),r=n.maxLength,o=t[n.inputName||\"default\"],i=e.length-1>=r;if(e.length<=o.length)return!1;if(Number.isInteger(r))return n.debug&&console.log(\"maxLength (num) reached:\",i),i?(this.maxLengthReached=!0,!0):(this.maxLengthReached=!1,!1);if(\"object\"===s(r)){var a=e.length-1>=r[n.inputName||\"default\"];return n.debug&&console.log(\"maxLength (obj) reached:\",a),a?(this.maxLengthReached=!0,!0):(this.maxLengthReached=!1,!1)}}},{key:\"isMaxLengthReached\",value:function(){return Boolean(this.maxLengthReached)}},{key:\"isTouchDevice\",value:function(){return\"ontouchstart\"in window||navigator.maxTouchPoints}},{key:\"pointerEventsSupported\",value:function(){return!!window.PointerEvent}},{key:\"camelCase\",value:function(t){return t?t.toLowerCase().trim().split(/[.\\-_\\s]/g).reduce((function(t,e){return e.length?t+e[0].toUpperCase()+e.slice(1):t})):\"\"}},{key:\"chunkArray\",value:function(t,e){return o(Array(Math.ceil(t.length/e))).map((function(n,r){return t.slice(e*r,e+e*r)}))}},{key:\"escapeRegex\",value:function(t){return t.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g,\"\\\\$&\")}},{key:\"getRtlOffset\",value:function(t,e){var n=t,r=e.indexOf(\"‫\");return r<t&&-1!=r&&n--,e.indexOf(\"‬\")<t&&-1!=r&&n--,n<0?0:n}},{key:\"isConstructor\",value:function(t){try{Reflect.construct(String,[],t)}catch(t){return!1}return!0}}],n=[{key:\"bindMethods\",value:function(t,e){var n,r=function(t,e){var n=\"undefined\"!=typeof Symbol&&t[Symbol.iterator]||t[\"@@iterator\"];if(!n){if(Array.isArray(t)||(n=i(t))||e&&t&&\"number\"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}var a,s=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return s=t.done,t},e:function(t){u=!0,a=t},f:function(){try{s||null==n.return||n.return()}finally{if(u)throw a}}}}(Object.getOwnPropertyNames(t.prototype));try{for(r.s();!(n=r.n()).done;){var o=n.value;\"constructor\"===o||\"bindMethods\"===o||(e[o]=e[o].bind(e))}}catch(t){r.e(t)}finally{r.f()}}}],e&&u(t.prototype,e),n&&u(t,n),Object.defineProperty(t,\"prototype\",{writable:!1}),t;var t,e,n}();c(f,\"noop\",(function(){}));var p=f;function d(t){return d=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},d(t)}function h(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,y(r.key),r)}}function v(t,e,n){return(e=y(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function y(t){var e=function(t,e){if(\"object\"!=d(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e||\"default\");if(\"object\"!=d(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"==d(e)?e:e+\"\"}var g=function(){return t=function t(e){var n=this,r=e.dispatch,o=e.getOptions;!function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,t),v(this,\"getOptions\",void 0),v(this,\"dispatch\",void 0),v(this,\"isModifierKey\",(function(t){return t.altKey||t.ctrlKey||t.shiftKey||[\"Tab\",\"CapsLock\",\"Esc\",\"ArrowUp\",\"ArrowDown\",\"ArrowLeft\",\"ArrowRight\"].includes(t.code||t.key||n.keyCodeToKey(null==t?void 0:t.keyCode))})),this.dispatch=r,this.getOptions=o,p.bindMethods(t,this)},e=[{key:\"handleHighlightKeyDown\",value:function(t){var e=this.getOptions();e.physicalKeyboardHighlightPreventDefault&&this.isModifierKey(t)&&(t.preventDefault(),t.stopImmediatePropagation());var n=this.getSimpleKeyboardLayoutKey(t);this.dispatch((function(r){var o,i,a=r.getButtonElement(n),s=r.getButtonElement(\"{\".concat(n,\"}\"));if(a)o=a,i=n;else{if(!s)return;o=s,i=\"{\".concat(n,\"}\")}var u,c,l,f,p=function(t){t.style.background=e.physicalKeyboardHighlightBgColor||\"#dadce4\",t.style.color=e.physicalKeyboardHighlightTextColor||\"black\"};if(o)if(Array.isArray(o)){if(o.forEach((function(t){return p(t)})),e.physicalKeyboardHighlightPress)if(e.physicalKeyboardHighlightPressUsePointerEvents)null===(u=o[0])||void 0===u||null===(c=u.onpointerdown)||void 0===c||c.call(u,t);else if(e.physicalKeyboardHighlightPressUseClick){var d;null===(d=o[0])||void 0===d||d.click()}else r.handleButtonClicked(i,t)}else p(o),e.physicalKeyboardHighlightPress&&(e.physicalKeyboardHighlightPressUsePointerEvents?null===(l=o)||void 0===l||null===(f=l.onpointerdown)||void 0===f||f.call(l,t):e.physicalKeyboardHighlightPressUseClick?o.click():r.handleButtonClicked(i,t))}))}},{key:\"handleHighlightKeyUp\",value:function(t){var e=this.getOptions();e.physicalKeyboardHighlightPreventDefault&&this.isModifierKey(t)&&(t.preventDefault(),t.stopImmediatePropagation());var n=this.getSimpleKeyboardLayoutKey(t);this.dispatch((function(r){var o,i,a,s=r.getButtonElement(n)||r.getButtonElement(\"{\".concat(n,\"}\")),u=function(t){t.removeAttribute&&t.removeAttribute(\"style\")};s&&(Array.isArray(s)?(s.forEach((function(t){return u(t)})),e.physicalKeyboardHighlightPressUsePointerEvents&&(null===(o=s[0])||void 0===o||null===(i=o.onpointerup)||void 0===i||i.call(o,t))):(u(s),e.physicalKeyboardHighlightPressUsePointerEvents&&(null==s||null===(a=s.onpointerup)||void 0===a||a.call(s,t))))}))}},{key:\"getSimpleKeyboardLayoutKey\",value:function(t){var e,n=\"\",r=t.code||t.key||this.keyCodeToKey(null==t?void 0:t.keyCode);return(n=null!=r&&r.includes(\"Numpad\")||null!=r&&r.includes(\"Shift\")||null!=r&&r.includes(\"Space\")||null!=r&&r.includes(\"Backspace\")||null!=r&&r.includes(\"Control\")||null!=r&&r.includes(\"Alt\")||null!=r&&r.includes(\"Meta\")?t.code||\"\":t.key||this.keyCodeToKey(null==t?void 0:t.keyCode)||\"\").length>1?null===(e=n)||void 0===e?void 0:e.toLowerCase():n}},{key:\"keyCodeToKey\",value:function(t){return{8:\"Backspace\",9:\"Tab\",13:\"Enter\",16:\"Shift\",17:\"Ctrl\",18:\"Alt\",19:\"Pause\",20:\"CapsLock\",27:\"Esc\",32:\"Space\",33:\"PageUp\",34:\"PageDown\",35:\"End\",36:\"Home\",37:\"ArrowLeft\",38:\"ArrowUp\",39:\"ArrowRight\",40:\"ArrowDown\",45:\"Insert\",46:\"Delete\",48:\"0\",49:\"1\",50:\"2\",51:\"3\",52:\"4\",53:\"5\",54:\"6\",55:\"7\",56:\"8\",57:\"9\",65:\"A\",66:\"B\",67:\"C\",68:\"D\",69:\"E\",70:\"F\",71:\"G\",72:\"H\",73:\"I\",74:\"J\",75:\"K\",76:\"L\",77:\"M\",78:\"N\",79:\"O\",80:\"P\",81:\"Q\",82:\"R\",83:\"S\",84:\"T\",85:\"U\",86:\"V\",87:\"W\",88:\"X\",89:\"Y\",90:\"Z\",91:\"Meta\",96:\"Numpad0\",97:\"Numpad1\",98:\"Numpad2\",99:\"Numpad3\",100:\"Numpad4\",101:\"Numpad5\",102:\"Numpad6\",103:\"Numpad7\",104:\"Numpad8\",105:\"Numpad9\",106:\"NumpadMultiply\",107:\"NumpadAdd\",109:\"NumpadSubtract\",110:\"NumpadDecimal\",111:\"NumpadDivide\",112:\"F1\",113:\"F2\",114:\"F3\",115:\"F4\",116:\"F5\",117:\"F6\",118:\"F7\",119:\"F8\",120:\"F9\",121:\"F10\",122:\"F11\",123:\"F12\",144:\"NumLock\",145:\"ScrollLock\",186:\";\",187:\"=\",188:\",\",189:\"-\",190:\".\",191:\"/\",192:\"`\",219:\"[\",220:\"\\\\\",221:\"]\",222:\"'\"}[t]||\"\"}}],e&&h(t.prototype,e),n&&h(t,n),Object.defineProperty(t,\"prototype\",{writable:!1}),t;var t,e,n}();function m(t){return m=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},m(t)}function b(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,x(r.key),r)}}function w(t,e,n){return(e=x(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function x(t){var e=function(t,e){if(\"object\"!=m(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e||\"default\");if(\"object\"!=m(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"==m(e)?e:e+\"\"}var O=function(){return t=function t(e){var n=e.utilities,r=e.options;!function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,t),w(this,\"utilities\",void 0),w(this,\"options\",void 0),w(this,\"candidateBoxElement\",void 0),w(this,\"pageIndex\",0),w(this,\"pageSize\",void 0),this.utilities=n,this.options=r,p.bindMethods(t,this),this.pageSize=this.utilities.getOptions().layoutCandidatesPageSize||5},e=[{key:\"destroy\",value:function(){this.candidateBoxElement&&(this.candidateBoxElement.remove(),this.pageIndex=0)}},{key:\"show\",value:function(t){var e=this,n=t.candidateValue,r=t.targetElement,o=t.onSelect;if(n&&n.length){var i=this.utilities.chunkArray(n.split(\" \"),this.pageSize);this.renderPage({candidateListPages:i,targetElement:r,pageIndex:this.pageIndex,nbPages:i.length,onItemSelected:function(t,n){o(t,n),e.destroy()}})}}},{key:\"renderPage\",value:function(t){var e,n=this,r=t.candidateListPages,o=t.targetElement,i=t.pageIndex,a=t.nbPages,s=t.onItemSelected;null===(e=this.candidateBoxElement)||void 0===e||e.remove(),this.candidateBoxElement=document.createElement(\"div\"),this.candidateBoxElement.className=\"hg-candidate-box\";var u=document.createElement(\"ul\");u.className=\"hg-candidate-box-list\",r[i].forEach((function(t){var e,r=document.createElement(\"li\"),o=function(){var t=new(n.options.useTouchEvents?TouchEvent:MouseEvent)(\"click\");return Object.defineProperty(t,\"target\",{value:r}),t};r.className=\"hg-candidate-box-list-item\",r.innerHTML=(null===(e=n.options.display)||void 0===e?void 0:e[t])||t,n.options.useTouchEvents?r.ontouchstart=function(e){return s(t,e||o())}:r.onclick=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o();return s(t,e)},u.appendChild(r)}));var c=i>0,l=document.createElement(\"div\");l.classList.add(\"hg-candidate-box-prev\"),c&&l.classList.add(\"hg-candidate-box-btn-active\");var f=function(){c&&n.renderPage({candidateListPages:r,targetElement:o,pageIndex:i-1,nbPages:a,onItemSelected:s})};this.options.useTouchEvents?l.ontouchstart=f:l.onclick=f,this.candidateBoxElement.appendChild(l),this.candidateBoxElement.appendChild(u);var p=i<a-1,d=document.createElement(\"div\");d.classList.add(\"hg-candidate-box-next\"),p&&d.classList.add(\"hg-candidate-box-btn-active\");var h=function(){p&&n.renderPage({candidateListPages:r,targetElement:o,pageIndex:i+1,nbPages:a,onItemSelected:s})};this.options.useTouchEvents?d.ontouchstart=h:d.onclick=h,this.candidateBoxElement.appendChild(d),o.prepend(this.candidateBoxElement)}}],e&&b(t.prototype,e),n&&b(t,n),Object.defineProperty(t,\"prototype\",{writable:!1}),t;var t,e,n}(),E=O;function S(t){return function(t){if(Array.isArray(t))return k(t)}(t)||function(t){if(\"undefined\"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t[\"@@iterator\"])return Array.from(t)}(t)||function(t,e){if(t){if(\"string\"==typeof t)return k(t,e);var n={}.toString.call(t).slice(8,-1);return\"Object\"===n&&t.constructor&&(n=t.constructor.name),\"Map\"===n||\"Set\"===n?Array.from(t):\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?k(t,e):void 0}}(t)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function k(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function P(t){return P=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},P(t)}function I(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function C(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,M(r.key),r)}}function A(t,e,n){return(e=M(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function M(t){var e=function(t,e){if(\"object\"!=P(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e||\"default\");if(\"object\"!=P(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"==P(e)?e:e+\"\"}var D=function(){return t=function t(e,n){var r=this;if(function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,t),A(this,\"input\",void 0),A(this,\"options\",void 0),A(this,\"utilities\",void 0),A(this,\"caretPosition\",void 0),A(this,\"caretPositionEnd\",void 0),A(this,\"keyboardDOM\",void 0),A(this,\"keyboardPluginClasses\",void 0),A(this,\"keyboardDOMClass\",void 0),A(this,\"buttonElements\",void 0),A(this,\"currentInstanceName\",void 0),A(this,\"allKeyboardInstances\",void 0),A(this,\"keyboardInstanceNames\",void 0),A(this,\"isFirstKeyboardInstance\",void 0),A(this,\"physicalKeyboard\",void 0),A(this,\"modules\",void 0),A(this,\"activeButtonClass\",void 0),A(this,\"holdInteractionTimeout\",void 0),A(this,\"holdTimeout\",void 0),A(this,\"isMouseHold\",void 0),A(this,\"initialized\",void 0),A(this,\"candidateBox\",void 0),A(this,\"keyboardRowsDOM\",void 0),A(this,\"defaultName\",\"default\"),A(this,\"activeInputElement\",null),A(this,\"handleParams\",(function(t,e){var n,r,o;if(\"string\"==typeof t)n=t.split(\".\").join(\"\"),r=document.querySelector(\".\".concat(n)),o=e;else if(t instanceof HTMLDivElement){if(!t.className)throw console.warn(\"Any DOM element passed as parameter must have a class.\"),new Error(\"KEYBOARD_DOM_CLASS_ERROR\");n=t.className.split(\" \")[0],r=t,o=e}else n=\"simple-keyboard\",r=document.querySelector(\".\".concat(n)),o=t;return{keyboardDOMClass:n,keyboardDOM:r,options:o}})),A(this,\"getOptions\",(function(){return r.options})),A(this,\"getCaretPosition\",(function(){return r.caretPosition})),A(this,\"getCaretPositionEnd\",(function(){return r.caretPositionEnd})),A(this,\"registerModule\",(function(t,e){r.modules[t]||(r.modules[t]={}),e(r.modules[t])})),A(this,\"getKeyboardClassString\",(function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return[r.keyboardDOMClass].concat(e).filter((function(t){return!!t})).join(\" \")})),\"undefined\"!=typeof window){var o=this.handleParams(e,n),i=o.keyboardDOMClass,a=o.keyboardDOM,s=o.options,u=void 0===s?{}:s;this.utilities=new p({getOptions:this.getOptions,getCaretPosition:this.getCaretPosition,getCaretPositionEnd:this.getCaretPositionEnd,dispatch:this.dispatch}),this.caretPosition=null,this.caretPositionEnd=null,this.keyboardDOM=a,this.options=function(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?I(Object(n),!0).forEach((function(e){A(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):I(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}({layoutName:\"default\",theme:\"hg-theme-default\",inputName:\"default\",preventMouseDownDefault:!1,enableLayoutCandidates:!0,excludeFromLayout:{}},u),this.keyboardPluginClasses=\"\",p.bindMethods(t,this);var c=this.options.inputName,l=void 0===c?this.defaultName:c;if(this.input={},this.input[l]=\"\",this.keyboardDOMClass=i,this.buttonElements={},window.SimpleKeyboardInstances||(window.SimpleKeyboardInstances={}),this.currentInstanceName=this.utilities.camelCase(this.keyboardDOMClass),window.SimpleKeyboardInstances[this.currentInstanceName]=this,this.allKeyboardInstances=window.SimpleKeyboardInstances,this.keyboardInstanceNames=Object.keys(window.SimpleKeyboardInstances),this.isFirstKeyboardInstance=this.keyboardInstanceNames[0]===this.currentInstanceName,this.physicalKeyboard=new g({dispatch:this.dispatch,getOptions:this.getOptions}),this.candidateBox=this.options.enableLayoutCandidates?new E({utilities:this.utilities,options:this.options}):null,!this.keyboardDOM)throw console.warn('\".'.concat(i,'\" was not found in the DOM.')),new Error(\"KEYBOARD_DOM_ERROR\");this.render(),this.modules={},this.loadModules()}},e=[{key:\"setCaretPosition\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t;this.caretPosition=t,this.caretPositionEnd=e}},{key:\"getInputCandidates\",value:function(t){var e=this,n=this.options,r=n.layoutCandidates,o=n.layoutCandidatesCaseSensitiveMatch;if(!r||\"object\"!==P(r))return{};var i=Object.keys(r).filter((function(n){var r=t.substring(0,e.getCaretPositionEnd()||0)||t,i=new RegExp(\"\".concat(e.utilities.escapeRegex(n),\"$\"),o?\"g\":\"gi\");return!!S(r.matchAll(i)).length}));if(i.length>1){var a=i.sort((function(t,e){return e.length-t.length}))[0];return{candidateKey:a,candidateValue:r[a]}}if(i.length){var s=i[0];return{candidateKey:s,candidateValue:r[s]}}return{}}},{key:\"showCandidatesBox\",value:function(t,e,n){var r=this;this.candidateBox&&this.candidateBox.show({candidateValue:e,targetElement:n,onSelect:function(e,n){var o=r.options,i=o.layoutCandidatesCaseSensitiveMatch,a=o.disableCandidateNormalization,s=o.enableLayoutCandidatesKeyPress,u=e;a||(u=e.normalize(\"NFD\")),\"function\"==typeof r.options.beforeInputUpdate&&r.options.beforeInputUpdate(r);var c=r.getInput(r.options.inputName,!0),l=r.getCaretPositionEnd()||0,f=c.substring(0,l||0)||c,p=new RegExp(\"\".concat(r.utilities.escapeRegex(t),\"$\"),i?\"g\":\"gi\"),d=f.replace(p,u),h=c.replace(f,d),v=d.length-f.length,y=(l||c.length)+v;y<0&&(y=0),r.setInput(h,r.options.inputName,!0),r.setCaretPosition(y),s&&\"function\"==typeof r.options.onKeyPress&&r.options.onKeyPress(e,n),\"function\"==typeof r.options.onChange&&r.options.onChange(r.getInput(r.options.inputName,!0),n),\"function\"==typeof r.options.onChangeAll&&r.options.onChangeAll(r.getAllInputs(),n)}})}},{key:\"handleButtonClicked\",value:function(t,e){var n=this.options,r=n.inputName,o=void 0===r?this.defaultName:r,i=n.debug;if(\"{//}\"!==t){this.input[o]||(this.input[o]=\"\"),\"function\"==typeof this.options.beforeInputUpdate&&this.options.beforeInputUpdate(this);var a=this.utilities.getUpdatedInput(t,this.input[o],this.caretPosition,this.caretPositionEnd);if(this.utilities.isStandardButton(t)&&this.activeInputElement&&this.input[o]&&this.input[o]===a&&0===this.caretPosition&&this.caretPositionEnd===a.length)return this.setInput(\"\",this.options.inputName,!0),this.setCaretPosition(0),this.activeInputElement.value=\"\",this.activeInputElement.setSelectionRange(0,0),void this.handleButtonClicked(t,e);if(\"function\"==typeof this.options.onKeyPress&&this.options.onKeyPress(t,e),this.input[o]!==a&&(!this.options.inputPattern||this.options.inputPattern&&this.inputPatternIsValid(a))){if(this.options.maxLength&&this.utilities.handleMaxLength(this.input,a))return;var s=this.utilities.getUpdatedInput(t,this.input[o],this.caretPosition,this.caretPositionEnd,!0);if(this.setInput(s,this.options.inputName,!0),i&&console.log(\"Input changed:\",this.getAllInputs()),this.options.debug&&console.log(\"Caret at: \",this.getCaretPosition(),this.getCaretPositionEnd(),\"(\".concat(this.keyboardDOMClass,\")\"),null==e?void 0:e.type),this.options.syncInstanceInputs&&this.syncInstanceInputs(),\"function\"==typeof this.options.onChange&&this.options.onChange(this.getInput(this.options.inputName,!0),e),\"function\"==typeof this.options.onChangeAll&&this.options.onChangeAll(this.getAllInputs(),e),null!=e&&e.target&&this.options.enableLayoutCandidates){var u,c=this.getInputCandidates(a),l=c.candidateKey,f=c.candidateValue;l&&f?this.showCandidatesBox(l,f,this.keyboardDOM):null===(u=this.candidateBox)||void 0===u||u.destroy()}}this.caretPositionEnd&&this.caretPosition!==this.caretPositionEnd&&(this.setCaretPosition(this.caretPositionEnd,this.caretPositionEnd),this.activeInputElement&&this.activeInputElement.setSelectionRange(this.caretPositionEnd,this.caretPositionEnd),this.options.debug&&console.log(\"Caret position aligned\",this.caretPosition)),i&&console.log(\"Key pressed:\",t)}}},{key:\"getMouseHold\",value:function(){return this.isMouseHold}},{key:\"setMouseHold\",value:function(t){this.options.syncInstanceInputs?this.dispatch((function(e){e.isMouseHold=t})):this.isMouseHold=t}},{key:\"handleButtonMouseDown\",value:function(t,e){var n=this;e&&(this.options.preventMouseDownDefault&&e.preventDefault(),this.options.stopMouseDownPropagation&&e.stopPropagation(),e.target.classList.add(this.activeButtonClass)),this.holdInteractionTimeout&&clearTimeout(this.holdInteractionTimeout),this.holdTimeout&&clearTimeout(this.holdTimeout),this.setMouseHold(!0),this.options.disableButtonHold||(this.holdTimeout=window.setTimeout((function(){(n.getMouseHold()&&(!t.includes(\"{\")&&!t.includes(\"}\")||\"{delete}\"===t||\"{backspace}\"===t||\"{bksp}\"===t||\"{space}\"===t||\"{tab}\"===t)||\"{arrowright}\"===t||\"{arrowleft}\"===t||\"{arrowup}\"===t||\"{arrowdown}\"===t)&&(n.options.debug&&console.log(\"Button held:\",t),n.handleButtonHold(t)),clearTimeout(n.holdTimeout)}),500))}},{key:\"handleButtonMouseUp\",value:function(t,e){var n=this;e&&(this.options.preventMouseUpDefault&&e.preventDefault&&e.preventDefault(),this.options.stopMouseUpPropagation&&e.stopPropagation&&e.stopPropagation(),!(e.target===this.keyboardDOM||e.target&&this.keyboardDOM.contains(e.target)||this.candidateBox&&this.candidateBox.candidateBoxElement&&(e.target===this.candidateBox.candidateBoxElement||e.target&&this.candidateBox.candidateBoxElement.contains(e.target)))&&this.candidateBox&&this.candidateBox.destroy()),this.recurseButtons((function(t){t.classList.remove(n.activeButtonClass)})),this.setMouseHold(!1),this.holdInteractionTimeout&&clearTimeout(this.holdInteractionTimeout),t&&\"function\"==typeof this.options.onKeyReleased&&this.options.onKeyReleased(t,e)}},{key:\"handleKeyboardContainerMouseDown\",value:function(t){this.options.preventMouseDownDefault&&t.preventDefault()}},{key:\"handleButtonHold\",value:function(t){var e=this;this.holdInteractionTimeout&&clearTimeout(this.holdInteractionTimeout),this.holdInteractionTimeout=window.setTimeout((function(){e.getMouseHold()?(e.handleButtonClicked(t),e.handleButtonHold(t)):clearTimeout(e.holdInteractionTimeout)}),100)}},{key:\"syncInstanceInputs\",value:function(){var t=this;this.dispatch((function(e){e.replaceInput(t.input),e.setCaretPosition(t.caretPosition,t.caretPositionEnd)}))}},{key:\"clearInput\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options.inputName||this.defaultName;this.input[t]=\"\",this.setCaretPosition(0),this.options.syncInstanceInputs&&this.syncInstanceInputs()}},{key:\"getInput\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options.inputName||this.defaultName,e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this.options.syncInstanceInputs&&!e&&this.syncInstanceInputs(),this.options.rtl?\"‫\"+this.input[t].replace(\"‫\",\"\").replace(\"‬\",\"\")+\"‬\":this.input[t]}},{key:\"getAllInputs\",value:function(){var t=this,e={};return Object.keys(this.input).forEach((function(n){e[n]=t.getInput(n,!0)})),e}},{key:\"setInput\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.options.inputName||this.defaultName,n=arguments.length>2?arguments[2]:void 0;this.input[e]=t,!n&&this.options.syncInstanceInputs&&this.syncInstanceInputs()}},{key:\"replaceInput\",value:function(t){this.input=t}},{key:\"setOptions\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=this.changedOptions(t);this.options=Object.assign(this.options,t),e.length&&(this.options.debug&&console.log(\"changedOptions\",e),this.onSetOptions(e),this.render())}},{key:\"changedOptions\",value:function(t){var e=this;return Object.keys(t).filter((function(n){return JSON.stringify(t[n])!==JSON.stringify(e.options[n])}))}},{key:\"onSetOptions\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];t.includes(\"layoutName\")&&this.candidateBox&&this.candidateBox.destroy(),(t.includes(\"layoutCandidatesPageSize\")||t.includes(\"layoutCandidates\"))&&this.candidateBox&&(this.candidateBox.destroy(),this.candidateBox=new E({utilities:this.utilities,options:this.options}))}},{key:\"resetRows\",value:function(){this.keyboardRowsDOM&&this.keyboardRowsDOM.remove(),this.keyboardDOM.className=this.keyboardDOMClass,this.keyboardDOM.setAttribute(\"data-skInstance\",this.currentInstanceName),this.buttonElements={}}},{key:\"dispatch\",value:function(t){if(!window.SimpleKeyboardInstances)throw console.warn(\"SimpleKeyboardInstances is not defined. Dispatch cannot be called.\"),new Error(\"INSTANCES_VAR_ERROR\");return Object.keys(window.SimpleKeyboardInstances).forEach((function(e){t(window.SimpleKeyboardInstances[e],e)}))}},{key:\"addButtonTheme\",value:function(t,e){var n=this;e&&t&&(t.split(\" \").forEach((function(r){e.split(\" \").forEach((function(e){n.options.buttonTheme||(n.options.buttonTheme=[]);var o=!1;n.options.buttonTheme.map((function(t){if(null!=t&&t.class.split(\" \").includes(e)){o=!0;var n=t.buttons.split(\" \");n.includes(r)||(o=!0,n.push(r),t.buttons=n.join(\" \"))}return t})),o||n.options.buttonTheme.push({class:e,buttons:t})}))})),this.render())}},{key:\"removeButtonTheme\",value:function(t,e){var n=this;if(!t&&!e)return this.options.buttonTheme=[],void this.render();t&&Array.isArray(this.options.buttonTheme)&&this.options.buttonTheme.length&&(t.split(\" \").forEach((function(t){var r;null===(r=n.options)||void 0===r||null===(r=r.buttonTheme)||void 0===r||r.map((function(r,o){if(r&&e&&e.includes(r.class)||!e){var i,a,s=null===(i=r)||void 0===i?void 0:i.buttons.split(\" \").filter((function(e){return e!==t}));r&&null!=s&&s.length?r.buttons=s.join(\" \"):(null===(a=n.options.buttonTheme)||void 0===a||a.splice(o,1),r=null)}return r}))})),this.render())}},{key:\"getButtonElement\",value:function(t){var e,n=this.buttonElements[t];return n&&(e=n.length>1?n:n[0]),e}},{key:\"inputPatternIsValid\",value:function(t){var e,n=this.options.inputPattern;if((e=n instanceof RegExp?n:n[this.options.inputName||this.defaultName])&&t){var r=e.test(t);return this.options.debug&&console.log('inputPattern (\"'.concat(e,'\"): ').concat(r?\"passed\":\"did not pass!\")),r}return!0}},{key:\"setEventListeners\",value:function(){if(this.isFirstKeyboardInstance||!this.allKeyboardInstances){this.options.debug&&console.log(\"Caret handling started (\".concat(this.keyboardDOMClass,\")\"));var t=this.options.physicalKeyboardHighlightPreventDefault,e=void 0!==t&&t;document.addEventListener(\"keyup\",this.handleKeyUp,e),document.addEventListener(\"keydown\",this.handleKeyDown,e),document.addEventListener(\"mouseup\",this.handleMouseUp),document.addEventListener(\"touchend\",this.handleTouchEnd),this.options.updateCaretOnSelectionChange&&document.addEventListener(\"selectionchange\",this.handleSelectionChange),document.addEventListener(\"select\",this.handleSelect)}}},{key:\"handleKeyUp\",value:function(t){this.caretEventHandler(t),this.options.physicalKeyboardHighlight&&this.physicalKeyboard.handleHighlightKeyUp(t)}},{key:\"handleKeyDown\",value:function(t){this.options.physicalKeyboardHighlight&&this.physicalKeyboard.handleHighlightKeyDown(t)}},{key:\"handleMouseUp\",value:function(t){this.caretEventHandler(t)}},{key:\"handleTouchEnd\",value:function(t){this.caretEventHandler(t)}},{key:\"handleSelect\",value:function(t){this.caretEventHandler(t)}},{key:\"handleSelectionChange\",value:function(t){navigator.userAgent.includes(\"Firefox\")||this.caretEventHandler(t)}},{key:\"caretEventHandler\",value:function(t){var e,n=this;t.target.tagName&&(e=t.target.tagName.toLowerCase()),this.dispatch((function(r){var o=t.target===r.keyboardDOM||t.target&&r.keyboardDOM.contains(t.target);if(n.options.syncInstanceInputs&&Array.isArray(t.path)&&(o=t.path.some((function(t){var e;return null==t||null===(e=t.hasAttribute)||void 0===e?void 0:e.call(t,\"data-skInstance\")}))),(\"textarea\"===e||\"input\"===e&&[\"text\",\"search\",\"url\",\"tel\",\"password\"].includes(t.target.type))&&!r.options.disableCaretPositioning){var i=t.target.selectionStart,a=t.target.selectionEnd;r.options.rtl&&(i=r.utilities.getRtlOffset(i,r.getInput()),a=r.utilities.getRtlOffset(a,r.getInput())),r.setCaretPosition(i,a),r.activeInputElement=t.target,r.options.debug&&console.log(\"Caret at: \",r.getCaretPosition(),r.getCaretPositionEnd(),t&&t.target.tagName.toLowerCase(),\"(\".concat(r.keyboardDOMClass,\")\"),null==t?void 0:t.type)}else!r.options.disableCaretPositioning&&o||\"selectionchange\"===(null==t?void 0:t.type)||(r.setCaretPosition(null),r.activeInputElement=null,r.options.debug&&console.log('Caret position reset due to \"'.concat(null==t?void 0:t.type,'\" event'),t))}))}},{key:\"recurseButtons\",value:function(t){var e=this;t&&Object.keys(this.buttonElements).forEach((function(n){return e.buttonElements[n].forEach(t)}))}},{key:\"destroy\",value:function(){this.options.debug&&console.log(\"Destroying simple-keyboard instance: \".concat(this.currentInstanceName));var t=this.options.physicalKeyboardHighlightPreventDefault,e=void 0!==t&&t;document.removeEventListener(\"keyup\",this.handleKeyUp,e),document.removeEventListener(\"keydown\",this.handleKeyDown,e),document.removeEventListener(\"mouseup\",this.handleMouseUp),document.removeEventListener(\"touchend\",this.handleTouchEnd),document.removeEventListener(\"select\",this.handleSelect),this.options.updateCaretOnSelectionChange&&document.removeEventListener(\"selectionchange\",this.handleSelectionChange),document.onpointerup=null,document.ontouchend=null,document.ontouchcancel=null,document.onmouseup=null,this.recurseButtons((function(t){t&&(t.onpointerdown=null,t.onpointerup=null,t.onpointercancel=null,t.ontouchstart=null,t.ontouchend=null,t.ontouchcancel=null,t.onclick=null,t.onmousedown=null,t.onmouseup=null,t.remove(),t=null)})),this.keyboardDOM.onpointerdown=null,this.keyboardDOM.ontouchstart=null,this.keyboardDOM.onmousedown=null,this.resetRows(),this.candidateBox&&(this.candidateBox.destroy(),this.candidateBox=null),this.activeInputElement=null,this.keyboardDOM.removeAttribute(\"data-skInstance\"),this.keyboardDOM.innerHTML=\"\",window.SimpleKeyboardInstances[this.currentInstanceName]=null,delete window.SimpleKeyboardInstances[this.currentInstanceName],this.initialized=!1}},{key:\"getButtonThemeClasses\",value:function(t){var e=this.options.buttonTheme,n=[];return Array.isArray(e)&&e.forEach((function(e){if(e&&e.class&&\"string\"==typeof e.class&&e.buttons&&\"string\"==typeof e.buttons){var r=e.class.split(\" \");e.buttons.split(\" \").includes(t)&&(n=[].concat(S(n),S(r)))}else console.warn('Incorrect \"buttonTheme\". Please check the documentation.',e)})),n}},{key:\"setDOMButtonAttributes\",value:function(t,e){var n=this.options.buttonAttributes;Array.isArray(n)&&n.forEach((function(n){n.attribute&&\"string\"==typeof n.attribute&&n.value&&\"string\"==typeof n.value?n.buttons&&\"string\"==typeof n.buttons?n.buttons.split(\" \").includes(t)&&e(n.attribute,n.value):e(n.attribute,n.value):console.warn('Incorrect \"buttonAttributes\". Please check the documentation.',n)}))}},{key:\"onTouchDeviceDetected\",value:function(){this.processAutoTouchEvents(),this.disableContextualWindow()}},{key:\"disableContextualWindow\",value:function(){window.oncontextmenu=function(t){var e;if(null!==(e=t.target.classList)&&void 0!==e&&e.contains(\"hg-button\"))return t.preventDefault(),t.stopPropagation(),!1}}},{key:\"processAutoTouchEvents\",value:function(){this.options.autoUseTouchEvents&&(this.options.useTouchEvents=!0,this.options.debug&&console.log(\"autoUseTouchEvents: Touch device detected, useTouchEvents enabled.\"))}},{key:\"onInit\",value:function(){this.options.debug&&console.log(\"\".concat(this.keyboardDOMClass,\" Initialized\")),this.setEventListeners(),\"function\"==typeof this.options.onInit&&this.options.onInit(this)}},{key:\"beforeFirstRender\",value:function(){this.utilities.isTouchDevice()&&this.onTouchDeviceDetected(),\"function\"==typeof this.options.beforeFirstRender&&this.options.beforeFirstRender(this),this.isFirstKeyboardInstance&&this.utilities.pointerEventsSupported()&&!this.options.useTouchEvents&&!this.options.useMouseEvents&&this.options.debug&&console.log(\"Using PointerEvents as it is supported by this browser\"),this.options.useTouchEvents&&this.options.debug&&console.log(\"useTouchEvents has been enabled. Only touch events will be used.\")}},{key:\"beforeRender\",value:function(){\"function\"==typeof this.options.beforeRender&&this.options.beforeRender(this)}},{key:\"onRender\",value:function(){\"function\"==typeof this.options.onRender&&this.options.onRender(this)}},{key:\"onModulesLoaded\",value:function(){\"function\"==typeof this.options.onModulesLoaded&&this.options.onModulesLoaded(this)}},{key:\"loadModules\",value:function(){var t=this;Array.isArray(this.options.modules)&&(this.options.modules.forEach((function(e){var n=t.utilities.isConstructor(e)?new e(t):e(t);n.init&&n.init(t)})),this.keyboardPluginClasses=\"modules-loaded\",this.render(),this.onModulesLoaded())}},{key:\"getModuleProp\",value:function(t,e){return!!this.modules[t]&&this.modules[t][e]}},{key:\"getModulesList\",value:function(){return Object.keys(this.modules)}},{key:\"parseRowDOMContainers\",value:function(t,e,n,r){var o=this,i=Array.from(t.children),a=0;return i.length&&n.forEach((function(n,s){var u=r[s];if(!(u&&u>n))return!1;var c=n-a,l=u-a,f=document.createElement(\"div\");f.className+=\"hg-button-container\";var p=\"\".concat(o.options.layoutName,\"-r\").concat(e,\"c\").concat(s);f.setAttribute(\"data-skUID\",p);var d=i.splice(c,l-c+1);a+=l-c,d.forEach((function(t){return f.appendChild(t)})),i.splice(c,0,f),t.innerHTML=\"\",i.forEach((function(e){return t.appendChild(e)})),o.options.debug&&console.log(\"rowDOMContainer\",d,c,l,a+1)})),t}},{key:\"render\",value:function(){var t=this;this.resetRows(),this.initialized||this.beforeFirstRender(),this.beforeRender();var e=\"hg-layout-\".concat(this.options.layoutName),n=this.options.layout||{default:[\"` 1 2 3 4 5 6 7 8 9 0 - = {bksp}\",\"{tab} q w e r t y u i o p [ ] \\\\\",\"{lock} a s d f g h j k l ; ' {enter}\",\"{shift} z x c v b n m , . / {shift}\",\".com @ {space}\"],shift:[\"~ ! @ # $ % ^ & * ( ) _ + {bksp}\",\"{tab} Q W E R T Y U I O P { } |\",'{lock} A S D F G H J K L : \" {enter}',\"{shift} Z X C V B N M < > ? {shift}\",\".com @ {space}\"]},r=this.options.useTouchEvents||!1,o=r?\"hg-touch-events\":\"\",i=this.options.useMouseEvents||!1,a=this.options.disableRowButtonContainers;this.keyboardDOM.className=this.getKeyboardClassString(this.options.theme,e,this.keyboardPluginClasses,o),this.keyboardDOM.setAttribute(\"data-skInstance\",this.currentInstanceName),this.keyboardRowsDOM=document.createElement(\"div\"),this.keyboardRowsDOM.className=\"hg-rows\",n[this.options.layoutName||this.defaultName].forEach((function(e,n){var o=e.split(\" \");t.options.excludeFromLayout&&t.options.excludeFromLayout[t.options.layoutName||t.defaultName]&&(o=o.filter((function(e){return t.options.excludeFromLayout&&!t.options.excludeFromLayout[t.options.layoutName||t.defaultName].includes(e)})));var s=document.createElement(\"div\");s.className+=\"hg-row\";var u=[],c=[];o.forEach((function(e,o){var l,f=!a&&\"string\"==typeof e&&e.length>1&&0===e.indexOf(\"[\"),p=!a&&\"string\"==typeof e&&e.length>1&&e.indexOf(\"]\")===e.length-1;f&&(u.push(o),e=e.replace(/\\[/g,\"\")),p&&(c.push(o),e=e.replace(/\\]/g,\"\"));var d=t.utilities.getButtonClass(e),h=t.utilities.getButtonDisplayName(e,t.options.display,t.options.mergeDisplay),v=t.options.useButtonTag?\"button\":\"div\",y=document.createElement(v);y.className+=\"hg-button \".concat(d),(l=y.classList).add.apply(l,S(t.getButtonThemeClasses(e))),t.setDOMButtonAttributes(e,(function(t,e){y.setAttribute(t,e)})),t.activeButtonClass=\"hg-activeButton\",!t.utilities.pointerEventsSupported()||r||i?r?(y.ontouchstart=function(n){t.handleButtonClicked(e,n),t.handleButtonMouseDown(e,n)},y.ontouchend=function(n){t.handleButtonMouseUp(e,n)},y.ontouchcancel=function(n){t.handleButtonMouseUp(e,n)}):(y.onclick=function(n){t.setMouseHold(!1),\"function\"==typeof t.options.onKeyReleased||t.options.useMouseEvents&&t.options.clickOnMouseDown||t.handleButtonClicked(e,n)},y.onmousedown=function(n){(\"function\"==typeof t.options.onKeyReleased||t.options.useMouseEvents&&t.options.clickOnMouseDown)&&!t.isMouseHold&&t.handleButtonClicked(e,n),t.handleButtonMouseDown(e,n)},y.onmouseup=function(n){t.handleButtonMouseUp(e,n)}):(y.onpointerdown=function(n){t.handleButtonClicked(e,n),t.handleButtonMouseDown(e,n)},y.onpointerup=function(n){t.handleButtonMouseUp(e,n)},y.onpointercancel=function(n){t.handleButtonMouseUp(e,n)}),y.setAttribute(\"data-skBtn\",e);var g=\"\".concat(t.options.layoutName,\"-r\").concat(n,\"b\").concat(o);y.setAttribute(\"data-skBtnUID\",g);var m=document.createElement(\"span\");m.innerHTML=h,y.appendChild(m),t.buttonElements[e]||(t.buttonElements[e]=[]),t.buttonElements[e].push(y),s.appendChild(y)})),s=t.parseRowDOMContainers(s,n,u,c),t.keyboardRowsDOM.appendChild(s)})),this.keyboardDOM.appendChild(this.keyboardRowsDOM),this.onRender(),this.initialized||(this.initialized=!0,!this.utilities.pointerEventsSupported()||r||i?r?(document.ontouchend=function(e){return t.handleButtonMouseUp(void 0,e)},document.ontouchcancel=function(e){return t.handleButtonMouseUp(void 0,e)},this.keyboardDOM.ontouchstart=function(e){return t.handleKeyboardContainerMouseDown(e)}):r||(document.onmouseup=function(e){return t.handleButtonMouseUp(void 0,e)},this.keyboardDOM.onmousedown=function(e){return t.handleKeyboardContainerMouseDown(e)}):(document.onpointerup=function(e){return t.handleButtonMouseUp(void 0,e)},this.keyboardDOM.onpointerdown=function(e){return t.handleKeyboardContainerMouseDown(e)}),this.onInit())}}],e&&C(t.prototype,e),n&&C(t,n),Object.defineProperty(t,\"prototype\",{writable:!1}),t;var t,e,n}(),T=D,N=T;return r}()},442:function(e){\"use strict\";e.exports=t}},n={};function r(t){var o=n[t];if(void 0!==o)return o.exports;var i=n[t]={exports:{}};return e[t].call(i.exports,i,i.exports,r),i.exports}r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,{a:e}),e},r.d=function(t,e){for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})};var o={};return function(){\"use strict\";r.r(o),r.d(o,{KeyboardReact:function(){return l},default:function(){return f}});r(981);var t=r(442),e=r(548),n=r.n(e);function i(t){return i=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},i(t)}function a(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function s(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?a(Object(n),!0).forEach((function(e){u(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):a(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function u(t,e,n){return(e=function(t){var e=function(t,e){if(\"object\"!=i(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e||\"default\");if(\"object\"!=i(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"==i(e)?e:e+\"\"}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var c=function(t){return s(s({},t),{},{keyboardRef:null})},l=function(e){var r=e.baseClass||\"react-simple-keyboard\",o=t.useRef(null),i=t.useRef(null),a=t.useRef(null),u=t.useRef(e);return t.useEffect((function(){return function(){a.current&&a.current.destroy(),o.current=!1}}),[]),t.useEffect((function(){var t=function(t){return s(s({},t),{},{theme:\"simple-keyboard \".concat(t.theme||\"hg-theme-default\")})}(e);if(!o.current){o.current=!0,t.debug&&console.log(\"ReactSimpleKeyboard: Init\");var l=i.current,f=\".\".concat(r);a.current=new(n())(l||f,t),t.keyboardRef&&t.keyboardRef(a.current)}var p=function(t,e){var n=c(e),r=c(t);return Object.keys(n).filter((function(t){return n[t]!==r[t]}))}(u.current,t);if(p.length){var d=a.current;u.current=t,null==d||d.setOptions(t),t.debug&&console.log(\"ReactSimpleKeyboard - setOptions called due to updated props:\",p)}}),[o,r,u,e]),t.createElement(\"div\",{className:r,ref:i})},f=l}(),o}()}));","/** @jsxImportSource @emotion/react */\n\nimport { css } from \"@emotion/react\";\nimport { useEffect, useMemo, useState } from \"react\";\nimport { KeyboardReact } from \"react-simple-keyboard\";\nimport \"react-simple-keyboard/build/css/index.css\";\nimport { useComponentConfigurationContext } from \"../../core\";\n\ntype Layout =\n | \"default\"\n | \"alphanumeric\"\n | \"hex\"\n | \"num\"\n | \"shift\"\n | \"numLogin\"\n | undefined;\n\nconst keyboardStyles = (layout: Layout) => css`\n background-color: var(--ddk-component-keyboard-container-background-color);\n display: flex;\n justify-content: center;\n width: 100%;\n\n & .simple-keyboard {\n background-color: var(--ddk-component-keyboard-background-color);\n\n width: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-alphanumeric-width)\"\n : layout === \"num\" || layout === \"numLogin\"\n ? \"var(--ddk-component-keyboard-numeric-width)\"\n : layout === \"hex\"\n ? \"var(--ddk-component-keyboard-hex-width)\"\n : \"\"};\n\n height: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-alphanumeric-height)\"\n : layout === \"num\" || layout === \"numLogin\"\n ? \"var(--ddk-component-keyboard-numeric-height)\"\n : layout === \"hex\"\n ? \"var(--ddk-component-keyboard-hex-height)\"\n : \"\"};\n\n padding: var(--ddk-component-keyboard-padding);\n border-radius: 0;\n overflow: visible;\n }\n\n & .hg-theme-default {\n .hg-row {\n justify-content: center;\n }\n\n & .hg-row:not(:last-child) {\n margin-bottom: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-margin-alphanumeric)\"\n : \"var(--ddk-component-keyboard-margin-bottom)\"};\n }\n\n & .hg-row .hg-button:not(:last-child) {\n margin-right: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-margin-alphanumeric)\"\n : \"var(--ddk-component-keyboard-margin-right)\"};\n }\n }\n\n & .hg-button {\n background-color: var(\n --ddk-component-keyboard-button-background-color-default\n );\n border-color: var(--ddk-component-keyboard-button-border-color-default);\n border-style: solid;\n border-width: var(--ddk-component-keyboard-button-border-width);\n box-shadow: var(--ddk-component-keyboard-button-box-shadow);\n color: var(--ddk-component-keyboard-button-color-default);\n font-family: var(--ddk-component-keyboard-button-font-family);\n font-size: var(--ddk-component-keyboard-button-font-size);\n font-weight: var(--ddk-component-keyboard-button-font-weight);\n\n flex: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-alphanumeric-flex)\"\n : layout === \"num\" || layout === \"numLogin\"\n ? \"var(--ddk-component-keyboard-numeric-flex)\"\n : layout === \"hex\"\n ? \"var(--ddk-component-keyboard-hex-flex)\"\n : \"\"};\n\n padding: var(--ddk-component-keyboard-button-padding);\n\n &.small-button {\n height: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-small-button-height-sm)\"\n : \"var(--ddk-component-keyboard-small-button-height-sm)\"};\n width: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-small-button-width-sm)\"\n : \"var(--ddk-component-keyboard-small-button-width-md)\"};\n }\n\n &.half-button {\n width: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-half-button-width-sm)\"\n : \"var(--ddk-component-keyboard-half-button-width-md)\"};\n }\n\n &.enter-button {\n height: ${layout === \"alphanumeric\" ||\n layout === \"shift\" ||\n layout === \"hex\"\n ? \"var(--ddk-component-keyboard-small-button-height-sm)\"\n : \"var(--ddk-component-keyboard-small-button-height-md)\"};\n width: ${layout === \"alphanumeric\" ||\n layout === \"shift\" ||\n layout === \"hex\"\n ? \"var(--ddk-component-keyboard-enter-button-width-sm)\"\n : \"var(--ddk-component-keyboard-enter-button-width-md)\"};\n font-size: var(--ddk-component-keyboard-button-font-size-xs);\n font-weight: var(--ddk-component-keyboard-button-font-bold);\n }\n &.space-button {\n height: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-small-button-height-sm)\"\n : \"var(--ddk-component-keyboard-small-button-height-md)\"};\n width: var(--ddk-component-keyboard-space-button-width);\n font-size: var(--ddk-component-keyboard-button-font-size-xs);\n font-weight: var(--ddk-component-keyboard-button-font-bold);\n }\n\n &.blank-button {\n visibility: hidden;\n }\n }\n`;\n\nconst buttonTheme = [\n {\n class: \"small-button\",\n buttons:\n \"1 2 3 4 5 6 7 8 9 0 Q W E R T Y U I O P A S D F G H J K L Z X C V B N M q w e r t y u i o p a s d f g h j k l z x c v b n m - , . {bksp} {empty} {lock} {shift}\",\n },\n {\n class: \"half-button\",\n buttons: \"{half}\",\n },\n {\n class: \"enter-button\",\n buttons: \"{enter}\",\n },\n {\n class: \"space-button\",\n buttons: \"{space}\",\n },\n {\n class: \"blank-button\",\n buttons: \"{empty} {half}\",\n },\n];\n\n// prettier-ignore\nconst getLayout = (mode?: \"standard\" | \"compact\") => {\n const standard = [\n \"1 2 3 4 5 6 7 8 9 0 - {bksp}\",\n \"q w e r t y u i o p\",\n \"{lock} a s d f g h j k l ' {enter}\",\n \"{shift} z x c v b n m {shift}\",\n \"{space}\",\n ];\n\n const hex = [\n \"1 2 3 A B\",\n \"4 5 6 C D\",\n \"7 8 9 E F\",\n `{bksp} 0${mode === \"standard\" ? \" {enter}\" : \"\"}`,\n ];\n\n const num = [\n \"1 2 3\",\n \"4 5 6\",\n \"7 8 9\",\n \". 0 {bksp}\",\n ];\n if (mode === \"standard\") num.push(\"{enter}\");\n\n const numLogin = [\n \"1 2 3\",\n \"4 5 6\",\n \"7 8 9\",\n \"{empty} 0 {bksp}\",\n ];\n\n const alphanumeric = [\n \"1 2 3 4 5 6 7 8 9 0 -\",\n \"q w e r t y u i o p\",\n \"a s d f g h j k l\",\n \"{shift} z x c v b n m , . {bksp}\",\n `{space}${mode === \"standard\" ? \" {enter}\" : \"\"}`,\n ];\n\n const shift = [\n \"1 2 3 4 5 6 7 8 9 0 -\",\n \"Q W E R T Y U I O P\",\n \"A S D F G H J K L\",\n \"{shift} Z X C V B N M , . {bksp}\",\n `{space}${mode === \"standard\" ? \" {enter}\" : \"\"}`,\n ];\n\n return {\n default: standard,\n hex,\n num,\n numLogin,\n alphanumeric,\n shift,\n };\n};\n\nconst display = {\n \"{bksp}\": \"<\",\n \"{enter}\": \"Enter\",\n \"{lock}\": \"Caps\",\n \"{space}\": \"Space\",\n \"{shift}\": \"^\",\n \"{empty}\": \" \",\n \"{half}\": \" \",\n};\n\ninterface KeyboardProps {\n layout?: Layout;\n onKeyPress?: (button: string) => void;\n onKeyReleased?: (button: string) => void;\n}\n\nexport const Keyboard = ({\n layout: layoutName = \"alphanumeric\",\n onKeyPress,\n onKeyReleased,\n}: KeyboardProps) => {\n const [currentLayout, setCurrentLayout] =\n useState<KeyboardProps[\"layout\"]>(layoutName);\n\n useEffect(() => {\n if (layoutName) setCurrentLayout(layoutName);\n }, [layoutName]);\n\n const handleShift = () => {\n const layoutName: KeyboardProps[\"layout\"] =\n currentLayout === \"shift\" ? \"alphanumeric\" : \"shift\";\n setCurrentLayout(layoutName);\n };\n\n const keyPress = (button: string) => {\n if (button === \"{shift}\") handleShift();\n onKeyPress?.(button);\n };\n\n const keyReleased = (button: string) => {\n onKeyReleased?.(button);\n };\n\n const { componentModeOverride } = useComponentConfigurationContext();\n\n const layout = useMemo(\n () => getLayout(componentModeOverride),\n [componentModeOverride]\n );\n\n return (\n <div css={keyboardStyles(currentLayout)}>\n <KeyboardReact\n buttonTheme={buttonTheme}\n display={display}\n layout={layout}\n layoutName={currentLayout ?? \"default\"}\n onKeyPress={keyPress}\n onKeyReleased={keyReleased}\n />\n </div>\n );\n};\n","/** @jsxImportSource @emotion/react */\n\nimport { css } from \"@emotion/react\";\nimport styled from \"@emotion/styled\";\nimport { useKosTranslation } from \"@kosdev-code/kos-ui-sdk\";\nimport {\n useCallback,\n useEffect,\n useRef,\n useState,\n type ReactNode,\n} from \"react\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport {\n ActionItemButton,\n Button,\n Card,\n Description,\n ErrorText,\n Input,\n Text,\n TextContainer,\n type CardProps,\n type UnitStyle,\n} from \"../../styles\";\nimport { CompactCloseButton } from \"../compact-close-button\";\nimport { Keyboard } from \"../keyboard\";\nimport { Header, Modal } from \"../modal\";\n\nconst inputCardStyles = css`\n font-family: var(--ddk-component-input-action-item-font-family);\n width: 100%;\n`;\n\nconst Container = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-modal-content-padding);\n height: 100%;\n`;\n\nconst InputWrapper = styled.div`\n display: flex;\n flex-direction: column;\n height: 100%;\n justify-content: space-between;\n gap: var(--ddk-component-modal-content-gap);\n`;\n\nconst KeyboardWrapper = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: center;\n gap: 16px;\n`;\n\nconst ContentWrapper = styled.div`\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n margin: 0 auto;\n padding: var(--ddk-component-input-card-input-padding);\n text-align: center;\n width: var(--ddk-component-input-card-input-width);\n`;\n\nconst InputPostContainer = styled.div`\n align-items: baseline;\n display: flex;\n gap: 8px;\n flex-shrink: 0;\n\n & span {\n color: var(\"--ddk-component-card-color-light\");\n font-size: 16px;\n white-space: nowrap;\n }\n`;\n\nexport interface InputCardProps extends CardProps {\n closeButtonLabel?: string;\n collapse?: boolean;\n description?: string;\n disabled?: boolean;\n float?: boolean;\n label: string;\n layout?: \"default\" | \"hex\" | \"num\" | \"alphanumeric\";\n maxLength?: number;\n onChange?: (value?: string) => void;\n isValid?: (input?: string) => string | undefined;\n isInputValid?: (input?: string) => boolean;\n submitLabel?: ReactNode;\n unitStyle?: UnitStyle;\n unitValue?: string;\n value?: string;\n}\n\nexport const InputCard = ({\n closeButtonLabel,\n collapse,\n description,\n disabled,\n label,\n layout,\n maxLength,\n onChange,\n isValid,\n isInputValid,\n submitLabel = \"Submit\",\n unitStyle,\n unitValue,\n value,\n ...props\n}: InputCardProps) => {\n const [open, setOpen] = useState(false);\n const [closing, setClosing] = useState(false);\n const [inputValue, setInputValue] = useState(value);\n const [error, setError] = useState<string | undefined>();\n const inputRef = useRef<HTMLInputElement>(null);\n\n const { componentModeOverride } = useComponentConfigurationContext();\n\n useEffect(() => {\n setInputValue(value);\n }, [value]);\n\n const defaultIsInputValid = () => true;\n const inputValid = isInputValid || defaultIsInputValid;\n const maxLengthValid = useCallback(() => {\n if (inputValue === undefined || maxLength === undefined) return true;\n if (inputValue.length < maxLength) return true;\n\n return false;\n }, [inputValue, maxLength]);\n\n const submit = () => {\n const error = isValid && isValid(inputValue);\n if (error) {\n setError(error);\n return;\n }\n\n setInputValue(inputValue);\n onChange?.(inputValue);\n setClosing(true);\n };\n\n const onKeyUp = (button: string) => {\n setError(undefined);\n\n switch (button) {\n case \"{bksp}\":\n setInputValue((value) => {\n const string = String(value);\n return string?.slice(0, string.length - 1);\n });\n break;\n case \"{enter}\":\n submit();\n break;\n case \"{space}\": {\n if (!maxLengthValid() || !inputValid()) return;\n setInputValue((value) => value + \" \");\n break;\n }\n case \"{shift}\":\n return;\n default: {\n if (!maxLengthValid() || !inputValid()) return;\n setInputValue((value) => (!value ? button : value + button));\n\n if (inputRef.current)\n inputRef.current.scrollLeft = inputRef.current.scrollWidth;\n }\n }\n };\n\n return (\n <Card collapse={collapse ?? componentModeOverride === \"compact\"} {...props}>\n <TextContainer>\n <Text>{label}</Text>\n {description && <Description>{description}</Description>}\n </TextContainer>\n <InputPostContainer>\n <ActionItemButton\n css={inputCardStyles}\n disabled={disabled}\n onPointerDown={() => {\n if (!disabled) {\n setOpen(true);\n setClosing(false);\n }\n }}\n unitStyle={unitStyle}\n unitValue={unitValue}\n >\n {value}\n </ActionItemButton>\n </InputPostContainer>\n {open && (\n <Modal\n show={!closing}\n onClose={() => setClosing(true)}\n onClosed={() => {\n setOpen(false);\n setError(undefined);\n setInputValue(value);\n }}\n contain={componentModeOverride !== \"compact\"}\n >\n <Container>\n <Header\n CloseButton={\n componentModeOverride === \"compact\"\n ? CompactCloseButton\n : undefined\n }\n closeButtonLabel={closeButtonLabel}\n onClose={() => setClosing(true)}\n showCloseButton\n title={label}\n />\n <InputWrapper>\n <ContentWrapper>\n {error && <ErrorText children={error} />}\n\n <Input\n ref={inputRef}\n type=\"text\"\n value={inputValue}\n readOnly\n isError={!!error}\n />\n </ContentWrapper>\n <KeyboardWrapper>\n {componentModeOverride === \"compact\" && (\n <ContentWrapper>\n <Button\n disabled={!!error}\n mode=\"primary\"\n onPointerDown={submit}\n >\n {submitLabel}\n </Button>\n </ContentWrapper>\n )}\n <Keyboard layout={layout} onKeyPress={onKeyUp} />\n </KeyboardWrapper>\n </InputWrapper>\n </Container>\n </Modal>\n )}\n </Card>\n );\n};\n\nconst SubmitText = () => {\n const { t } = useKosTranslation(\"common\");\n\n return t(\"submit\");\n};\n\nexport const InputCardContainer = ({\n submitLabel,\n ...props\n}: InputCardProps) => (\n <InputCard submitLabel={submitLabel ?? <SubmitText />} {...props} />\n);\n\nexport const ErrorInputCard = styled(InputCard)`\n --ddk-component-input-card-description-color: var(\n --ddk-semantic-color-system-red\n );\n`;\n","/** @jsxImportSource @emotion/react */\n\nimport { useKosTranslation } from \"@kosdev-code/kos-ui-sdk\";\nimport { useCallback } from \"react\";\nimport { InputCard, type InputCardProps } from \"../input-card\";\n\nexport interface InputRangeCardProps extends InputCardProps {\n maxValue: number;\n maxValueValidationText?: string;\n minValue: number;\n minValueValidationText?: string;\n}\n\nexport const InputRangeCard = ({\n maxValue,\n maxValueValidationText,\n minValue,\n minValueValidationText,\n ...props\n}: InputRangeCardProps) => {\n const isValid = useCallback(\n (inputValue) => {\n if (Number(inputValue) < minValue) {\n return minValueValidationText;\n } else if (Number(inputValue) > maxValue) {\n return maxValueValidationText;\n } else {\n return undefined;\n }\n },\n [maxValue, maxValueValidationText, minValue, minValueValidationText]\n );\n\n return <InputCard {...props} isValid={isValid} unitStyle=\"inline\" />;\n};\n\nexport const InputRangeCardContainer = ({\n maxValue,\n minValue,\n ...props\n}: Omit<InputRangeCardProps, \"minValueValidationText\">) => {\n const { t } = useKosTranslation(\"common\", { keyPrefix: \"validation\" });\n\n return (\n <InputRangeCard\n maxValue={maxValue}\n maxValueValidationText={t(\"maxValue\", { data: { maxValue } })}\n minValue={minValue}\n minValueValidationText={t(\"minValue\", { data: { minValue } })}\n {...props}\n />\n );\n};\n","import styled from \"@emotion/styled\";\nimport { EyeOffIcon, EyeOpenIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport { useState } from \"react\";\nimport { Input, InputProps } from \"../../styles/input/input\";\n\nconst InputGroup = styled.div`\n position: relative;\n\n svg {\n position: absolute;\n top: 5px;\n right: 24px;\n width: 32px;\n height: 32px;\n }\n input {\n width: 100%;\n }\n`;\n\ninterface InputTypePasswordProps extends InputProps {\n style?: React.CSSProperties;\n}\n\nexport const InputTypePassword = ({\n style,\n ...props\n}: InputTypePasswordProps) => {\n const [showPassword, setShowPassword] = useState(false);\n\n const toggleShowPassword = () => {\n setShowPassword(!showPassword);\n };\n\n return (\n <InputGroup style={style}>\n <Input {...props} readOnly type={showPassword ? \"text\" : \"password\"} />\n {!showPassword ? (\n <EyeOpenIcon onPointerDown={toggleShowPassword} />\n ) : (\n <EyeOffIcon onPointerDown={toggleShowPassword} />\n )}\n </InputGroup>\n );\n};\n","/** @jsxImportSource @emotion/react */\n\nimport { css } from \"@emotion/react\";\nimport { Dial, DialItem, DialItemRenderer } from \"../dial\";\nimport { useCallback } from \"react\";\n\nconst multiDialStyles = css`\n align-self: stretch;\n display: flex;\n`;\n\nexport interface DialConfiguration<T> {\n id: string;\n className?: string;\n itemRenderer?: DialItemRenderer<T>;\n items?: DialItem<T>[];\n loop?: boolean;\n selectedItemId?: T;\n}\n\nexport interface MultiDialProps<T> {\n className?: string;\n dials: DialConfiguration<T>[];\n enableAnimation?: boolean;\n itemSize?: number;\n numberOfVisibleItems?: number;\n onChange?: (dial: string, dialItem: DialItem<T>) => void;\n selectedItemOffset?: number;\n}\n\nexport const MultiDial = <T,>({\n className,\n dials,\n enableAnimation,\n itemSize = 20,\n numberOfVisibleItems = 7,\n onChange,\n selectedItemOffset,\n}: MultiDialProps<T>) => {\n const onChangeHandler = useCallback(\n (id: string) => (dialItem: DialItem<T>) => {\n onChange?.(id, dialItem);\n },\n [onChange]\n );\n\n return (\n <div css={multiDialStyles} className={className}>\n {dials.map(\n ({ id, className, itemRenderer, items, loop, selectedItemId }) => (\n <Dial<T>\n key={id}\n className={className}\n enableAnimation={enableAnimation}\n itemRenderer={itemRenderer}\n items={items}\n itemSize={itemSize}\n loop={loop}\n numberOfVisibleItems={numberOfVisibleItems}\n onChange={onChangeHandler(id)}\n selectedItemId={selectedItemId}\n selectedItemOffset={selectedItemOffset}\n />\n )\n )}\n </div>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { DialItemRendererProps } from \"../dial\";\n\nexport type PickerItemRendererProps<T> = DialItemRendererProps<T>;\n\nexport const PickerItemRenderer = styled.div<PickerItemRendererProps<any>>`\n color: ${(props) =>\n props.selected\n ? \"var(--ddk-component-picker-list-item-color-active)\"\n : \"var(--ddk-component-picker-list-item-color-default)\"};\n\n flex: 1;\n font-family: var(--ddk-component-picker-list-item-font-family);\n font-size: var(--ddk-component-picker-list-item-font-size);\n font-weight: var(--ddk-component-picker-list-item-font-weight);\n letter-spacing: var(--ddk-component-picker-list-item-letter-spacing);\n transition: initial; // color 250ms;\n line-height: var(--ddk-component-picker-list-item-line-height);\n`;\n","/** @jsxImportSource @emotion/react */\n\nimport { css } from \"@emotion/react\";\nimport { DialConfiguration, MultiDial, MultiDialProps } from \"../multi-dial\";\nimport { PickerItemRenderer } from \"../picker-item-renderer\";\n\nconst multiPickerStyle = css`\n border-color: var(--ddk-component-picker-border-color) transparent;\n border-style: solid;\n border-width: var(--ddk-component-picker-border-width);\n justify-content: center;\n overflow: hidden;\n padding: var(--ddk-component-picker-padding);\n text-align: center;\n\n & .separator {\n border-left-color: var(--ddk-component-picker-border-color);\n border-left-width: var(--ddk-component-picker-border-width);\n border-left-style: solid;\n\n &:last-child {\n border-right-color: var(--ddk-component-picker-border-color);\n border-right-width: var(--ddk-component-picker-border-width);\n border-right-style: solid;\n }\n }\n`;\n\nconst VISIBLE_ITEMS_MAX = 13;\n\nexport type MultiPickerProps<T> = MultiDialProps<T>;\n\nexport const MultiPicker = <T,>({ dials, ...props }: MultiPickerProps<T>) => {\n const multiPickerDials: DialConfiguration<T>[] = dials.map((dial) => {\n return {\n ...dial,\n className: \"separator\",\n itemRenderer: PickerItemRenderer,\n };\n });\n\n let { numberOfVisibleItems, selectedItemOffset } = props;\n\n const itemsLength = dials.reduce<number>(\n (previousValue, currentValue) =>\n Math.max(previousValue, currentValue.items?.length || 0),\n 0\n );\n\n if (numberOfVisibleItems === undefined)\n numberOfVisibleItems =\n itemsLength >= VISIBLE_ITEMS_MAX ? VISIBLE_ITEMS_MAX : itemsLength || 0;\n\n if (selectedItemOffset === undefined)\n selectedItemOffset = Math.floor(numberOfVisibleItems * 0.5);\n\n return (\n <MultiDial<T>\n itemSize={40}\n {...props}\n css={multiPickerStyle}\n dials={multiPickerDials}\n numberOfVisibleItems={numberOfVisibleItems}\n selectedItemOffset={selectedItemOffset}\n />\n );\n};\n","import { useCallback, useEffect, useState } from \"react\";\nimport { Card, Description, Error, Text, TextContainer } from \"../../styles\";\nimport { Dropdown } from \"../dropdown\";\nimport { CancelProceedFooter, Content, Header, Modal } from \"../modal\";\nimport { MultiPicker } from \"../multi-picker\";\nimport { DialConfiguration } from \"../multi-dial\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { CompactCloseButton } from \"../compact-close-button\";\n\nexport interface SelectedIds<T> {\n [key: string]: T;\n}\n\nexport interface MultiPickerItem<T> {\n id: T;\n label: string;\n [key: string]: unknown;\n}\n\nexport interface MultiPickerCardProps<T> {\n cancelButtonLabel?: string;\n className?: string;\n closeButtonLabel?: string;\n data: DialConfiguration<T>[];\n description?: string;\n descriptionAsError?: boolean;\n disabled?: boolean;\n displayValue?: string;\n enableAnimation?: boolean;\n float?: boolean;\n icon?: React.FunctionComponent;\n label?: string;\n modalTitle?: string;\n onChange?: (id: string, pickerItem: MultiPickerItem<T>) => void;\n onDiscard?: () => void;\n onSave?: (selectedIds: SelectedIds<T>) => void;\n proceedButtonLabel?: string;\n selectedItemOffset?: number;\n}\n\nconst dataReducer = (data) =>\n data.reduce((previousValue, currentValue) => {\n return {\n ...previousValue,\n [currentValue.id]: currentValue.selectedItemId,\n };\n }, {});\n\nexport const MultiPickerCard = <T,>({\n cancelButtonLabel,\n className,\n closeButtonLabel,\n data,\n description,\n descriptionAsError = false,\n disabled,\n displayValue,\n enableAnimation,\n float,\n icon: Icon,\n label,\n modalTitle,\n onChange,\n onDiscard,\n onSave,\n proceedButtonLabel,\n selectedItemOffset,\n}: MultiPickerCardProps<T>) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n const [open, setOpen] = useState(false);\n\n const [selectedIds, setSelectedIds] = useState<SelectedIds<T>>(\n dataReducer(data)\n );\n\n const multiPickerOnChange = useCallback(\n (id: string, pickerItem: MultiPickerItem<T>) => {\n setSelectedIds({ ...selectedIds, [String(id)]: pickerItem.id });\n onChange?.(id, pickerItem);\n },\n [onChange, selectedIds]\n );\n\n const cancelProceedFooterOnSave = () => {\n onSave?.(selectedIds);\n setOpen(false);\n };\n\n const discardChanges = () => {\n onDiscard?.();\n setOpen(false);\n };\n\n useEffect(() => {\n setSelectedIds(dataReducer(data));\n }, [open, data]);\n\n return (\n <>\n <Card\n className={className}\n collapse={componentModeOverride === \"compact\"}\n float={float}\n >\n {(label || description) && (\n <TextContainer>\n {label && <Text>{label}</Text>}\n {description && descriptionAsError ? (\n <Error>{description}</Error>\n ) : (\n description && <Description>{description}</Description>\n )}\n </TextContainer>\n )}\n <Dropdown\n onPointerDown={() => !disabled && setOpen(true)}\n Icon={Icon}\n disabled={disabled}\n >\n {displayValue}\n </Dropdown>\n </Card>\n {open && (\n <Modal\n show={open}\n onClose={() => discardChanges()}\n contain={componentModeOverride !== \"compact\"}\n >\n <Header\n title={modalTitle || label}\n showCloseButton\n onClose={() => discardChanges()}\n closeButtonLabel={closeButtonLabel}\n CloseButton={\n componentModeOverride === \"compact\"\n ? CompactCloseButton\n : undefined\n }\n />\n <Content>\n <MultiPicker<T>\n dials={data}\n enableAnimation={enableAnimation}\n onChange={multiPickerOnChange}\n selectedItemOffset={selectedItemOffset}\n />\n </Content>\n <CancelProceedFooter\n cancelLabel={cancelButtonLabel}\n proceedLabel={proceedButtonLabel}\n onProceed={cancelProceedFooterOnSave}\n onCancel={() => discardChanges()}\n />\n </Modal>\n )}\n </>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { useKosDateFormats, useKosTimeFormats } from \"@kosdev-code/kos-ui-sdk\";\nimport { format } from \"date-fns\";\nimport type { ReactNode } from \"react\";\nimport { BodyMedium, Button, Card, LabelDateInformation } from \"../../styles\";\n\nconst Container = styled(Card)`\n display: flex;\n min-height: var(--ddk-component-notification-card-height);\n gap: 16px;\n`;\n\ntype IndicatorType = {\n color?: string | undefined;\n};\n\nconst Indicator = styled.div<IndicatorType>`\n background-color: ${(props) =>\n props.color\n ? props.color\n : \"var(--ddk-component-notification-card-indicator-color)\"};\n border-radius: 50%;\n flex-shrink: 0;\n height: var(--ddk-component-notification-card-indicator-size);\n width: var(--ddk-component-notification-card-indicator-size);\n`;\n\nconst TextContainer = styled.div`\n align-items: center;\n display: flex;\n flex-direction: row;\n flex: 1;\n gap: var(--ddk-component-notification-card-gap);\n word-wrap: break-word;\n`;\n\nconst DateContainer = styled(LabelDateInformation)`\n box-sizing: border-box;\n white-space: nowrap;\n flex: 0 0 var(--ddk-component-notification-card-date-size);\n`;\n\nconst ButtonContainer = styled.div`\n align-items: center;\n display: flex;\n justify-content: flex-end;\n flex: 0 0 var(--ddk-component-notification-card-action-size);\n`;\n\nconst InfoText = styled(BodyMedium)`\n min-width: var(--ddk-component-button-min-width);\n text-align: center;\n`;\n\ntype NotificationCardType = {\n buttonLabel?: string;\n date?: string;\n dateLabel?: ReactNode;\n indicatorColor?: string;\n label?: string;\n onAction?: () => void;\n prefix?: ReactNode;\n};\n\nexport const NotificationCard = ({\n buttonLabel,\n indicatorColor,\n label,\n prefix,\n dateLabel,\n onAction,\n}: NotificationCardType) => (\n <Container>\n <TextContainer>\n <Indicator color={indicatorColor} />\n {prefix}\n <BodyMedium>{label}</BodyMedium>\n </TextContainer>\n <DateContainer>{dateLabel}</DateContainer>\n <ButtonContainer>\n {onAction && buttonLabel ? (\n <Button onPointerDown={onAction}>{buttonLabel}</Button>\n ) : (\n <InfoText>{buttonLabel}</InfoText>\n )}\n </ButtonContainer>\n </Container>\n);\n\nexport const NotificationCardContainer = ({\n date,\n ...props\n}: Omit<NotificationCardType, \"dateLabel\">) => {\n const displayDate = date ?? Date.now();\n const { selectedDateFormat } = useKosDateFormats();\n const { selectedTimeFormat } = useKosTimeFormats();\n const fDate = selectedDateFormat\n ? format(new Date(displayDate), selectedDateFormat)\n : \"\";\n const fTime = selectedTimeFormat\n ? format(new Date(displayDate), selectedTimeFormat)\n : \"\";\n const formattedDate = [fDate, fTime].map((s, index) => (\n <div key={index === 0 ? \"date\" : \"time\"}>{s}</div>\n ));\n\n return <NotificationCard dateLabel={formattedDate} {...props} />;\n};\n","import styled from \"@emotion/styled\";\nimport { Footer, Header, Modal } from \"../modal\";\nimport { Button, Input } from \"../../styles\";\nimport { Keyboard } from \"../keyboard\";\nimport { useState } from \"react\";\n\nconst CardTitle = styled.div`\n display: flex;\n justify-content: center;\n font-weight: var(--ddk-component-Numpad-head-font-weight-medium);\n`;\n\nconst NumpadContent = styled.div`\n display: flex;\n flex-direction: column;\n width: 100%;\n align-items: center;\n gap: var(--ddk-component-Numpad-content-gap-large);\n input {\n width: 400px;\n }\n`;\n\ninterface NumPadProps {\n heading: string;\n onComplete?: () => void;\n}\n\nexport const Numpad = ({ onComplete, heading }: NumPadProps) => {\n const [closing, setClosing] = useState(false);\n const [inputValue, setInputValue] = useState(\"\");\n\n const inputType = async (button: string) => {\n switch (button) {\n case \"{bksp}\":\n setInputValue((value) => value?.slice(0, value.length - 1));\n break;\n default:\n setInputValue((value) => value + button);\n }\n };\n\n const keyReleased = (button: string) => {\n if (\n inputValue &&\n inputValue?.length < 0 &&\n button !== \"{bksp}\" &&\n button !== \"{enter}\"\n ) {\n return;\n } else {\n inputType(button);\n }\n };\n\n return (\n <Modal\n show={!closing}\n onClose={() => setClosing(true)}\n onClosed={onComplete}\n >\n <Header\n closeButtonLabel={\"close\"}\n title={<CardTitle>{heading}</CardTitle>}\n showCloseButton\n onClose={() => setClosing(true)}\n />\n <NumpadContent>\n <Input value={inputValue} />\n <Keyboard layout=\"numLogin\" onKeyReleased={keyReleased} />\n </NumpadContent>\n <Footer>\n <Button>Discard</Button>\n <Button>Save</Button>\n </Footer>\n </Modal>\n );\n};\n","/** @jsxImportSource @emotion/react */\n\nimport { css } from \"@emotion/react\";\nimport { Dial, DialItem, DialProps } from \"../dial\";\nimport { PickerItemRenderer } from \"../picker-item-renderer\";\n\nconst pickerStyle = css`\n border-color: var(--ddk-component-picker-border-color) transparent;\n border-style: solid;\n border-width: var(--ddk-component-picker-border-width);\n overflow: hidden;\n text-align: center;\n`;\n\nexport interface PickerProps<T> extends DialProps<T> {\n pickerWidthSizeInPercentage?: number;\n}\nexport type PickerItem<T> = DialItem<T>;\n\nexport const Picker = <T,>(props: PickerProps<T>) => (\n <Dial<T>\n itemRenderer={PickerItemRenderer}\n itemSize={40}\n offset={true}\n {...props}\n css={pickerStyle}\n />\n);\n","import { useState } from \"react\";\nimport { Card } from \"../../styles\";\nimport { Dropdown } from \"../dropdown\";\nimport { CancelProceedFooter, Content, Header, Modal } from \"../modal\";\nimport { Picker, PickerItem } from \"../picker\";\nimport { DialItem } from \"../dial\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { CompactCloseButton } from \"../compact-close-button\";\nimport styled from \"@emotion/styled\";\n\nconst Container = styled.div`\n display: flex;\n flex-direction: column;\n padding: var(--ddk-component-picker-padding);\n gap: var(--ddk-component-picker-gap);\n height: 100%;\n`;\n\nexport interface PickerCardProps<T> {\n cancelButtonLabel?: string;\n closeButtonLabel?: string;\n collapse?: boolean;\n disabled?: boolean;\n displayValue?: string;\n enableAnimation?: boolean;\n float?: boolean;\n items?: PickerItem<T>[];\n label: string;\n loop?: boolean;\n numberOfVisibleItems?: number;\n onSave?: (id: T) => void;\n proceedButtonLabel?: string;\n selectedItemId?: T;\n selectedItemOffset?: number;\n unitValue?: string;\n}\n\nexport const PickerCard = <T,>({\n cancelButtonLabel,\n closeButtonLabel,\n collapse,\n disabled,\n displayValue,\n enableAnimation,\n items,\n label,\n loop,\n numberOfVisibleItems,\n onSave,\n proceedButtonLabel,\n selectedItemId,\n selectedItemOffset,\n unitValue,\n ...props\n}: PickerCardProps<T>) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n const [open, setOpen] = useState(false);\n const [saveSelectedIdValue, setSaveSelectedIdValue] = useState<T>();\n\n const pickerOnChange = ({ id }: DialItem<T>) => {\n setSaveSelectedIdValue(id);\n };\n\n const cancelProceedFooterOnSave = () => {\n if (saveSelectedIdValue !== undefined) onSave?.(saveSelectedIdValue);\n\n setOpen(false);\n };\n\n return (\n <Card collapse={collapse ?? componentModeOverride === \"compact\"} {...props}>\n {label}\n\n <Dropdown\n disabled={disabled}\n onPointerDown={() => !disabled && setOpen(true)}\n unitValue={unitValue}\n >\n {displayValue}\n </Dropdown>\n\n <Modal\n show={open}\n onClose={() => setOpen(false)}\n contain={componentModeOverride !== \"compact\"}\n >\n <Header\n title={label}\n showCloseButton\n onClose={() => setOpen(false)}\n closeButtonLabel={closeButtonLabel}\n CloseButton={\n componentModeOverride === \"compact\" ? CompactCloseButton : undefined\n }\n />\n <Container>\n <Content>\n <Picker<T>\n enableAnimation={enableAnimation}\n items={items}\n loop={loop}\n numberOfVisibleItems={numberOfVisibleItems}\n onChange={pickerOnChange}\n selectedItemId={selectedItemId}\n selectedItemOffset={selectedItemOffset}\n />\n </Content>\n <CancelProceedFooter\n cancelLabel={cancelButtonLabel}\n proceedLabel={proceedButtonLabel}\n onProceed={cancelProceedFooterOnSave}\n onCancel={() => setOpen(false)}\n />\n </Container>\n </Modal>\n </Card>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { ElementType, ReactNode } from \"react\";\n\ninterface PlaceholderMessageProps {\n icon: ElementType;\n children: ReactNode;\n}\n\nconst Text = styled.div`\n font-size: var(--ddk-generic-font-size-large);\n font-weight: var(--ddk-generic-font-weight-medium);\n color: var(--ddk-generic-color-grey-100);\n`;\n\nexport const PlaceholderMessage = ({\n children,\n icon: Icon,\n}: PlaceholderMessageProps) => (\n <>\n <Icon />\n <Text>{children}</Text>\n </>\n);\n","import { ReactNode } from \"react\";\nimport { createPortal } from \"react-dom\";\n\ninterface PortalProps {\n children: ReactNode;\n}\n\nexport const Portal = ({ children }: PortalProps) =>\n createPortal(children, document.body);\n","import styled from \"@emotion/styled\";\nimport { useEffect, useState, type ReactNode } from \"react\";\nimport { createPortal } from \"react-dom\";\n\nconst Container = styled.div`\n align-items: center;\n background-color: var(--ddk-component-status-bar-container-background-color);\n bottom: 0;\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n left: 0;\n padding: var(--ddk-component-status-bar-container-padding);\n position: fixed;\n right: 0;\n top: 0;\n z-index: 10;\n max-width: var(--ddk-component-shell-max-width);\n`;\n\nconst Content = styled.div`\n background: var(--ddk-component-status-bar-background-color);\n border-radius: var(--ddk-component-status-bar-border-radius);\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-status-bar-gap);\n padding: var(--ddk-component-status-bar-padding);\n width: var(--ddk-component-status-bar-width);\n pointer-events: auto;\n`;\n\nexport interface StatusBarProps {\n blocked?: boolean;\n children: ReactNode;\n onClose?: () => void;\n show?: boolean;\n}\n\nexport const StatusBar = ({\n blocked = true,\n children,\n onClose,\n show,\n}: StatusBarProps) => {\n const [isShow, setIsShow] = useState(true);\n\n useEffect(() => {\n setIsShow(!!show);\n }, [show]);\n\n if (!isShow) return null;\n\n return createPortal(\n <Container\n style={{ pointerEvents: blocked ? \"auto\" : \"none\" }}\n onPointerDown={onClose}\n >\n <Content>{children}</Content>\n </Container>,\n document.body\n );\n};\n","import styled from \"@emotion/styled\";\nimport { useKosTranslation } from \"@kosdev-code/kos-ui-sdk\";\nimport { ReactNode, type FunctionComponent } from \"react\";\nimport { Button } from \"../../styles\";\nimport { StatusBar, type StatusBarProps } from \"../status-bar\";\n\nconst ProgressBarTitleContainer = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-progress-bar-title-container-gap);\n`;\n\nexport const ProgressBarTitle = styled.div`\n color: var(--ddk-component-progress-bar-title-color);\n font-size: var(--ddk-component-progress-bar-title-font-size);\n font-weight: var(--ddk-component-progress-bar-title-font-weight);\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n`;\n\nexport const ProgressBarSubTitle = styled(ProgressBarTitle)`\n color: var(--ddk-component-progress-bar-subtitle-color);\n font-size: var(--ddk-component-progress-bar-subtitle-font-size);\n font-weight: var(--ddk-component-progress-bar-subtitle-font-weight);\n`;\n\nexport const ProgressFillContainer = styled.div`\n align-items: var(\n --ddk-component-progress-bar-progress-fill-container-align-items\n );\n display: flex;\n flex-direction: var(\n --ddk-component-progress-bar-progress-fill-container-flex-direction\n );\n gap: var(--ddk-component-progress-bar-progress-fill-container-gap);\n width: 100%;\n`;\n\nexport const ProgressFill = styled.div<{ value: number }>`\n align-items: flex-start;\n background: var(--ddk-generic-color-grey-80, #292929);\n background: ${(props) =>\n `linear-gradient(to right, var(--ddk-component-progress-bar-progress-fill-color) ${props.value}%, var(--ddk-component-progress-bar-progress-fill-background-color) ${props.value}%)`};\n border-radius: var(--ddk-component-progress-bar-progress-fill-border-radius);\n border: var(--ddk-component-progress-bar-progress-fill-border);\n display: flex;\n flex-direction: column;\n flex: 1 0 var(--ddk-component-progress-bar-progress-fill-height);\n gap: 10px;\n height: var(--ddk-component-progress-bar-progress-fill-height);\n justify-content: center;\n width: 100%;\n`;\n\nexport type ProgressStatus =\n | \"cancelled\"\n | \"failure\"\n | \"in-progress\"\n | \"success\";\n\ninterface ProgressBarProps extends Omit<StatusBarProps, \"children\"> {\n blocked?: boolean;\n cancelLabel?: string;\n isCancelable?: boolean;\n onCancel?: () => void;\n renderCancel?: ReactNode;\n renderFailure?: ReactNode;\n renderSuccess?: ReactNode;\n status?: ProgressStatus;\n subtitle?: string;\n title: ReactNode;\n value: number;\n}\n\nexport const ProgressBar: FunctionComponent<ProgressBarProps> = ({\n blocked,\n cancelLabel = \"Cancel\",\n isCancelable,\n onCancel,\n onClose,\n renderCancel,\n renderFailure,\n renderSuccess,\n show,\n status,\n subtitle,\n title,\n value,\n}) => {\n // Often when a future begins, it's progress will start at \"1\", then set to\n // \"0\" and rise to \"100\" as expected. To avoid the progress bar from\n // rendering the hiccup, we can anchor \"1\" to \"0\" which avoids displaying a\n // visual indicator and then disappearing immediately...\n const displayValue = value <= 1 ? 0 : value;\n\n const content =\n renderSuccess && status === \"success\" ? (\n renderSuccess\n ) : renderFailure && status === \"failure\" ? (\n renderFailure\n ) : renderCancel && status === \"cancelled\" ? (\n renderCancel\n ) : (\n <>\n <ProgressBarTitleContainer>\n <ProgressBarTitle>{title}</ProgressBarTitle>\n {subtitle && <ProgressBarSubTitle>{subtitle}</ProgressBarSubTitle>}\n </ProgressBarTitleContainer>\n <ProgressFillContainer>\n <ProgressFill value={displayValue}></ProgressFill>\n {isCancelable && (\n <Button onPointerDown={onCancel}>{cancelLabel}</Button>\n )}\n </ProgressFillContainer>\n </>\n );\n\n return (\n <StatusBar blocked={blocked} onClose={onClose} show={show}>\n {content}\n </StatusBar>\n );\n};\n\nexport const ProgressBarContainer = (\n props: Omit<ProgressBarProps, \"cancelLabel\">\n) => {\n const { t } = useKosTranslation(\"common\");\n\n return <ProgressBar cancelLabel={t(\"cancel\")} {...props} />;\n};\n","import styled from \"@emotion/styled\";\n\nimport { useEffect, useState } from \"react\";\nimport { ActionItemButton } from \"../../styles\";\n\nexport type RadioValue = number | string;\n\nexport interface RadioActiveProps {\n active?: boolean;\n}\n\nconst RadioCardBox = styled(ActionItemButton)`\n align-items: center;\n\n background-color: ${(props) =>\n props.active\n ? \"var(--ddk-component-radio-card-background-color-active)\"\n : \"var(--ddk-component-radio-card-background-color)\"};\n\n border: ${(props) =>\n props.active\n ? \"1px solid var(--ddk-component-radio-card-border-color-active)\"\n : \"1px solid var(--ddk-component-radio-card-border-color-default)\"};\n\n display: flex;\n flex: 1 0 0;\n height: 56px;\n justify-content: center;\n padding: 17px 12px;\n`;\n\nexport interface RadioButtonsProps {\n id: string | number;\n title: string | number;\n}\ninterface RadioCardProps {\n radioButtons: RadioButtonsProps[];\n onChange?: (value: RadioValue) => void;\n value?: RadioValue;\n}\nexport const RadioCard = ({\n radioButtons,\n onChange,\n value,\n}: RadioCardProps) => {\n const [radioValue, setRadioValue] = useState(value);\n\n useEffect(() => {\n setRadioValue(value);\n }, [value]);\n\n const onPointerDown = (id: RadioValue) => {\n if (id === radioValue) return;\n setRadioValue(id);\n onChange?.(id);\n };\n return (\n <>\n {radioButtons.map(({ id, title }: RadioButtonsProps, index) => (\n <RadioCardBox\n key={index}\n active={id === radioValue}\n onPointerDown={() => onPointerDown(id)}\n >\n {title}\n </RadioCardBox>\n ))}\n </>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\n\ninterface headerProp {\n headerLabel?: string;\n child?: ReactNode;\n}\n\nconst TopHeader = styled.div`\n display: flex;\n align-items: var(--ddk-component-schedule-table-div-center-text-align);\n justify-content: space-between;\n padding: var(--ddk-semantic-control-container-padding);\n background-color: var(--ddk-generic-color-grey-5);\n`;\nconst HeaderTitle = styled.div`\n font-size: var(--ddk-generic-font-size-small);\n font-weight: var(--ddk-generic-font-weight-medium);\n line-height: var(--ddk-component-schedule-table-header-line-height);\n color: var(--ddk-component-schedule-table-header-color);\n`;\n\nexport const ScheduleTableHeader = ({ headerLabel, child }: headerProp) => (\n <TopHeader>\n <HeaderTitle>{headerLabel}</HeaderTitle>\n {child}\n </TopHeader>\n);\n","import styled from \"@emotion/styled\";\nimport { useEffect, useState } from \"react\";\n\nexport interface ToggleProps {\n active?: boolean;\n disabled?: boolean;\n onChange?: (value: boolean) => void;\n shadow?: boolean;\n checked?: boolean;\n label?: string;\n}\n\nconst ToggleContainer = styled.div`\n align-items: center;\n cursor: pointer;\n display: flex;\n justify-content: var(--ddk-component-toggle-container-justify-content);\n gap: var(--ddk-component-toggle-container-gap);\n`;\n\nexport const ToggleTrack = styled.div<ToggleProps>`\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-toggle-track-background-color-disabled)\"\n : props.checked\n ? \"var(--ddk-component-toggle-track-background-color-on)\"\n : \"var(--ddk-component-toggle-track-background-color-off)\"};\n\n border-radius: var(--ddk-component-toggle-thumb-size);\n box-sizing: border-box;\n height: calc(\n var(--ddk-component-toggle-thumb-size) +\n var(--ddk-component-toggle-track-padding) * 2\n );\n padding: var(--ddk-component-toggle-track-padding);\n transition-duration: var(--ddk-component-toggle-track-transition-duration);\n transition-property: var(--ddk-component-toggle-track-transition-property);\n display: flex;\n align-items: center;\n transition-timing-function: var(\n --ddk-component-toggle-track-transition-timing-function\n );\n width: var(--ddk-component-toggle-track-width);\n`;\n\nexport const ToggleThumb = styled.div<ToggleProps>`\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-toggle-thumb-background-color-disabled)\"\n : \"var(--ddk-component-toggle-thumb-background-color-default)\"};\n border-radius: var(--ddk-component-toggle-thumb-size);\n box-shadow: var(--ddk-component-toggle-thumb-box-shadow);\n height: var(--ddk-component-toggle-thumb-size);\n width: var(--ddk-component-toggle-thumb-size);\n\n transform: ${(props) =>\n props.checked\n ? \"translate(calc(var(--ddk-component-toggle-track-width) - var(--ddk-component-toggle-thumb-size) - var(--ddk-component-toggle-track-padding) * 2), 0px)\"\n : \"translate(0px, 0px)\"};\n\n transition-duration: var(--ddk-component-toggle-thumb-transition-duration);\n transition-property: var(--ddk-component-toggle-thumb-transition-property);\n transition-timing-function: var(\n --ddk-component-toggle-thumb-transition-timing-function\n );\n`;\n\nexport const ToggleLabel = styled.div`\n color: var(--ddk-component-toggle-label-color);\n font-family: var(--ddk-component-toggle-label-font-family);\n font-size: var(--ddk-component-toggle-label-font-size);\n font-weight: var(--ddk-component-toggle-label-font-weight);\n letter-spacing: var(--ddk-component-toggle-label-letter-spacing);\n`;\n\nexport const Toggle = ({\n checked,\n disabled,\n label,\n onChange,\n ...props\n}: ToggleProps) => {\n const [checkedValue, setCheckedValue] = useState<boolean>(checked ?? false);\n\n useEffect(() => {\n setCheckedValue(checked ?? false);\n }, [checked]);\n\n const onPointerDown = () => {\n if (disabled) return;\n\n setCheckedValue(!checkedValue);\n onChange?.(!checkedValue);\n };\n\n return (\n <ToggleContainer>\n {label && <ToggleLabel>{label}</ToggleLabel>}\n <ToggleTrack\n checked={checkedValue}\n disabled={disabled}\n {...props}\n onPointerDown={onPointerDown}\n >\n <ToggleThumb checked={checkedValue} disabled={disabled} {...props} />\n </ToggleTrack>\n </ToggleContainer>\n );\n};\n","import { css } from \"@emotion/react\";\ninterface SubHeadingProp {\n headings: string[];\n}\n\nconst tableHeadings = css`\n padding: var(--ddk-component-schedule-table-sub-heading-padding);\n padding-bottom: 0;\n font-size: var(--ddk-generic-font-size-x-small);\n font-weight: var(--ddk-generic-font-weight-medium);\n line-height: var(--ddk-component-schedule-table-div-line-height);\n color: var(--ddk-generic-color-grey-60);\n`;\nexport const ScheduleTableRow = ({ headings }: SubHeadingProp) => (\n <>\n {headings?.map((data, i) => (\n <th key={i} css={tableHeadings}>\n {data}\n </th>\n ))}\n </>\n);\n","import { css } from \"@emotion/react\";\nimport { ScheduleTableHeader } from \"./schedule-table-header\";\nimport styled from \"@emotion/styled\";\nimport { Toggle } from \"../toggle\";\nimport { ReactNode } from \"react\";\nimport { ScheduleTableRow } from \"./schedule-table-row\";\nimport { ActionItem } from \"../../styles\";\n\ninterface IProp {\n tableMainHeading: string;\n headingRightChild: ReactNode;\n tableSubHeadings: string[];\n weekSchedule: {\n day: string;\n isTrue: boolean;\n openTime: string;\n closeTime: string;\n }[];\n}\n\nexport const ScheduleTableDiv = styled.div`\n width: 100%;\n border: 1px solid var(--ddk-generic-color-grey-30);\n border-radius: 8px;\n`;\n\nconst tableDesign = css`\n width: 100%;\n text-align: center;\n border-collapse: collapse;\n`;\n\nconst tableRows = css`\n border-bottom: 1px solid var(--ddk-generic-color-grey-30);\n`;\nconst tableDiv = css`\n padding: var(--ddk-component-schedule-table-div-padding);\n font-size: var(--ddk-generic-font-size-x-small);\n font-weight: var(--ddk-generic-font-weight-medium);\n line-height: var(--ddk-component-schedule-table-div-line-height);\n color: var(--ddk-generic-color-grey-100);\n`;\nconst tableLeftNode = css`\n text-align: var(--ddk-component-schedule-table-div-left-text-align);\n`;\nconst tableCenterNode = css`\n text-align: var(--ddk-component-schedule-table-div-center-text-align);\n`;\n\nconst centerContent = css`\n justify-content: center;\n`;\n\nexport const ScheduleTable = ({\n tableMainHeading,\n headingRightChild,\n weekSchedule,\n tableSubHeadings,\n}: IProp) => (\n <ScheduleTableDiv>\n <table css={tableDesign}>\n <thead>\n <tr css={tableRows}>\n <th colSpan={4}>\n <ScheduleTableHeader\n headerLabel={tableMainHeading}\n child={headingRightChild}\n />\n </th>\n </tr>\n <tr>\n <ScheduleTableRow headings={tableSubHeadings} />\n </tr>\n </thead>\n <tbody>\n {weekSchedule?.map((data, i) => (\n <tr css={tableRows} key={i}>\n <td css={[tableDiv, tableLeftNode]}>{data?.day}</td>\n <td css={[tableDiv, tableCenterNode]}>\n <Toggle checked={data?.isTrue} />\n </td>\n <td css={tableDiv}>\n <ActionItem css={centerContent} children={data?.openTime} />\n </td>\n <td css={tableDiv}>\n <ActionItem css={centerContent} children={data?.closeTime} />\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n </ScheduleTableDiv>\n);\n","import { CloseSidebarIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport {\n ActionItemButtonProps,\n IconButton,\n IconButtonSize,\n} from \"../../styles\";\n\ninterface ExtendedActionItemButtonProps extends ActionItemButtonProps {\n label?: string;\n size?: IconButtonSize;\n}\n\nexport const SidebarCloseButton = ({\n children,\n label,\n size = \"medium\",\n ...props\n}: ExtendedActionItemButtonProps) => (\n <IconButton icon={CloseSidebarIcon} size={size} {...props}>\n {label}\n </IconButton>\n);\n","import { PropsWithChildren } from \"react\";\nimport { Portal } from \"../portal\";\nimport {\n SidebarContent,\n SidebarHeader,\n SidebarNav,\n} from \"../../styles/sidebar\";\n\nimport { SidebarCloseButton } from \"../sidebar-close-button\";\nimport { animated, useSpring } from \"@react-spring/web\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport styled from \"@emotion/styled\";\n\nconst AnimatedSidebarNav = animated(SidebarNav);\n\nexport interface SidebarProps {\n enableAnimation?: boolean;\n show: boolean;\n title: string;\n onClose: () => void;\n}\n\nconst Shade = styled.div`\n background: transparent;\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n`;\nexport const Sidebar: React.FunctionComponent<\n PropsWithChildren<SidebarProps>\n> = ({ children, enableAnimation, show, onClose, title }) => {\n const componentConfigurationContext = useComponentConfigurationContext();\n\n const enableAnimationValue =\n enableAnimation !== undefined\n ? enableAnimation\n : componentConfigurationContext.enableSidebarAnimation;\n\n const props = useSpring({\n left: show ? \"0px\" : \"-515px\",\n immediate: !enableAnimationValue,\n });\n\n return (\n <Portal>\n {show && <Shade onPointerDown={onClose} />}\n <AnimatedSidebarNav style={props}>\n <SidebarHeader>\n <SidebarCloseButton onPointerDown={onClose} /> {title}\n </SidebarHeader>\n <SidebarContent>{children}</SidebarContent>\n </AnimatedSidebarNav>\n </Portal>\n );\n};\n","import { css } from \"@emotion/react\";\nimport { ActionItemButton, Card } from \"../../styles\";\n\nexport interface StaticInputCardProps {\n label: string;\n value?: string;\n}\n\nconst inputCardStyles = css`\n font-family: var(--ddk-component-input-action-item-font-family);\n`;\n\nexport const StaticInputCard = ({ label, value }: StaticInputCardProps) => (\n <Card>\n {label}\n <ActionItemButton css={inputCardStyles}>{value}</ActionItemButton>\n </Card>\n);\n","import styled from \"@emotion/styled\";\nimport { Card } from \"../../styles\";\n\nexport interface StatusCardProps {\n failureMessage?: string;\n lastSuccess?: Date;\n leftLabel: string;\n message?: React.ReactNode;\n rightLabel: string;\n type: \"Default\" | \"Success\" | \"Fail\" | \"InProgress\";\n lastSuccessful: string;\n}\n\ninterface StatusCardHeaderProps {\n type: string;\n}\n\nconst CardStatus = styled.div`\n display: flex;\n flex-direction: column;\n gap: 8px;\n width: 100%;\n max-width: 100%;\n\n p {\n color: var(--ddk-component-status-card-message-color);\n font-size: var(--ddk-component-status-card-message-font-size);\n margin: 0px;\n }\n`;\n\nconst StatusCardHeader = styled.div<StatusCardHeaderProps>`\n display: flex;\n justify-content: space-between;\n width: 100%;\n\n h4 {\n align-items: center;\n display: flex;\n font-size: var(--ddk-component-status-card-title-font-size);\n font-weight: var(--ddk-component-status-card-title-font-weight);\n gap: 8px;\n margin: 0px;\n }\n\n label {\n color: ${({ type }) =>\n type === \"Fail\"\n ? \"var(--ddk-component-status-card-color-secondary)\"\n : type === \"InProgress\" || type === \"Default\"\n ? \"var(--ddk-component-status-card-color-inprogress)\"\n : \"var( --ddk-component-status-card-color-primary)\"};\n\n font-size: var(--ddk-component-status-card-message-font-size);\n }\n`;\n\nconst StatusCardFooter = styled.div`\n display: flex;\n justify-content: space-between;\n width: 100%;\n\n label {\n color: var(--ddk-component-status-card-color-secondary);\n font-size: var(--ddk-component-status-card-message-font-size);\n font-weight: var(--ddk-component-status-card-last-successful-font-weight);\n }\n`;\n\nexport const StatusDots = styled.span`\n background-color: ${({ type }: { type: string }) =>\n type === \"Fail\"\n ? \"var(--ddk-component-status-card-icon-color-fail)\"\n : type === \"InProgress\"\n ? \"var(--ddk-component-status-card-icon-color-inprogress)\"\n : \"var(--ddk-component-status-card-icon-color-success)\"};\n\n border-radius: var(--ddk-component-status-card-dot-border-radius);\n display: inline-block;\n height: 8px;\n width: 8px;\n`;\n\nexport const StatusCard = ({\n failureMessage,\n lastSuccess,\n leftLabel,\n message,\n rightLabel,\n type,\n lastSuccessful,\n}: StatusCardProps) => (\n <Card>\n <CardStatus>\n <StatusCardHeader type={type}>\n <h4>\n {type !== \"Default\" && <StatusDots type={type}></StatusDots>}\n {leftLabel}\n </h4>\n <label>{rightLabel}</label>\n </StatusCardHeader>\n {message && <div>{message}</div>}\n {type === \"Fail\" && (\n <StatusCardFooter>\n <p>{failureMessage}</p>\n <label>\n {lastSuccessful}: {lastSuccess?.toLocaleString()}\n </label>\n </StatusCardFooter>\n )}\n </CardStatus>\n </Card>\n);\n","import { StepStatus } from \"@kosdev-code/kos-ddk-styles\";\n\ntype Size = \"large\" | \"small\";\ntype Status = \"active\" | \"completed\" | \"incomplete\" | \"pending\" | \"error\";\n\nexport const getFill = (status: Status) => {\n switch (status) {\n case \"active\":\n return \"var(--ddk-component-status-indicator-fill-active)\";\n case \"completed\":\n return \"var(--ddk-component-status-indicator-fill-completed)\";\n case \"incomplete\":\n return \"var(--ddk-component-status-indicator-fill-incomplete)\";\n case \"pending\":\n return \"var(--ddk-component-status-indicator-fill-pending)\";\n case \"error\":\n return \"var(--ddk-component-status-indicator-fill-error)\";\n default:\n return undefined;\n }\n};\n\nexport const getSize = (size: Size) => {\n switch (size) {\n case \"large\":\n return \"var(--ddk-component-status-indicator-large)\";\n case \"small\":\n return \"var(--ddk-component-status-indicator-small)\";\n default:\n return undefined;\n }\n};\n\ninterface StatusIndicatorProps {\n size?: \"large\" | \"small\";\n status?: Status;\n}\n\nexport const StatusIndicator = ({\n size = \"large\",\n status = \"pending\",\n}: StatusIndicatorProps) => {\n const fill = getFill(status);\n const sizeValue = getSize(size);\n\n return (\n <StepStatus\n fill={fill}\n style={{ height: sizeValue, width: sizeValue }}\n ></StepStatus>\n );\n};\n","/** @jsxImportSource @emotion/react */\nimport styled from \"@emotion/styled\";\n\nexport interface StepsIndicatorLabelProps {\n leftLabel: string;\n type: boolean;\n}\n\ninterface StatusCardHeaderProps {\n isFail: boolean;\n}\n\nconst LabelStatus = styled.div`\n display: flex;\n flex-direction: column;\n gap: 8px;\n width: 100%;\n\n p {\n color: var(--ddk-component-status-card-message-color);\n font-size: var(--ddk-component-status-card-message-font-size);\n margin: 0px;\n }\n`;\n\nconst StatusCardHeader = styled.div<StatusCardHeaderProps>`\n display: flex;\n justify-content: space-between;\n width: 100%;\n\n h4 {\n align-items: center;\n display: flex;\n gap: 8px;\n margin: 0px;\n color: var(--ddk-generic-color-grey-100, #171717);\n font-size: 22px;\n font-style: normal;\n font-weight: 600;\n line-height: 120%; /* 33.6px */\n letter-spacing: 0.42px;\n }\n\n label {\n color: ${(props) =>\n props.isFail\n ? \"var(--ddk-component-status-card-color-secondary)\"\n : \"var( --ddk-component-status-card-color-primary)\"};\n\n font-size: var(--ddk-component-status-card-title-font-size);\n }\n`;\n\nconst StatusDots = styled.span`\n background-color: ${({ isFail }: { isFail: boolean }) =>\n isFail\n ? \"var(--ddk-component-step-indicator-label-color-fail)\" // Change the color for isFail\n : \"var(--ddk-component-status-card-icon-color-success)\"};\n border-radius: var(--ddk-component-status-card-dot-border-radius);\n display: inline-block;\n height: 16px;\n width: 16px;\n`;\n\nexport const StepsIndicatorLabel = ({\n leftLabel,\n type,\n}: StepsIndicatorLabelProps) => (\n <LabelStatus>\n <StatusCardHeader isFail={type}>\n <h4>\n {type && <StatusDots isFail={type}></StatusDots>}\n {!type && <StatusDots isFail={type}></StatusDots>}\n {leftLabel}\n </h4>\n </StatusCardHeader>\n </LabelStatus>\n);\n","import styled from \"@emotion/styled\";\nimport { CloseSidebarIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport { StepsIndicatorLabel } from \"../steps-indicator-label\";\n\nconst SidebarSubContainer = styled.div`\n width: 300px;\n background: var(--ddk-generic-color-grey-5, #f9f9f9);\n box-shadow: 8px 0px 16px 0px rgba(0, 0, 0, 0.08),\n 0px 0px 4px 0px rgba(0, 0, 0, 0.04);\n padding: 32px 96px 32px 40px;\n display: flex;\n flex-direction: column;\n gap: 64px;\n`;\n\nconst SidebarList = styled.ul`\n list-style-type: none;\n padding: 0;\n`;\n\nconst SidebarItem = styled.li`\n margin-bottom: 40px;\n`;\n\nconst LogoContainer = styled.div`\n padding-top: 32px;\n display: flex;\n flex-direction: row;\n gap: 16px;\n`;\n\nconst StepsLabel = styled.div`\n color: var(--ddk-generic-color-grey-100, #171717);\n font-size: 28px;\n font-style: normal;\n font-weight: 600;\n line-height: 120%; /* 33.6px */\n letter-spacing: 0.42px;\n`;\n\ntype MenuItem = {\n name: string;\n type: boolean;\n};\n\ninterface StepsSideNavProps {\n onClose: () => void;\n menuData: MenuItem[];\n}\n\nexport const StepsSideNav = ({ onClose, menuData }: StepsSideNavProps) => (\n <SidebarSubContainer>\n <LogoContainer>\n <CloseSidebarIcon onPointerDown={onClose} />\n <StepsLabel>Setup</StepsLabel>\n </LogoContainer>\n <SidebarList>\n {menuData.map((item, index) => (\n <SidebarItem key={index}>\n <StepsIndicatorLabel leftLabel={item.name} type={item.type} />\n </SidebarItem>\n ))}\n </SidebarList>\n </SidebarSubContainer>\n);\n","import { css } from \"@emotion/react\";\nimport { SubNavButton } from \"../../styles\";\n\nexport interface SubNavProps {\n buttons: {\n label: string;\n id: number;\n }[];\n activeButtonId: number;\n onPointerDown: (id: number) => void;\n}\nconst sideBar = css`\n border-right: 1px solid var(--ddk-component-sub-nav-border-color);\n width: 200px;\n`;\n\nconst sideBarBody = css`\n padding-top: var(--ddk-component-sub-nav-padding-medium);\n padding: var(--ddk-component-top-navigation-padding);\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-sub-nav-gap);\n`;\n\nexport const SubNav = ({\n buttons,\n activeButtonId,\n onPointerDown,\n}: SubNavProps) => (\n <div css={sideBar}>\n <div css={sideBarBody}>\n {buttons.map((item) => (\n <SubNavButton\n key={item.id}\n active={activeButtonId === item.id}\n onPointerDown={() => onPointerDown(item.id)}\n >\n {item.label}\n </SubNavButton>\n ))}\n </div>\n </div>\n);\n","import { css } from \"@emotion/react\";\nimport { SubNav } from \"../sub-nav/sub-nav\";\nimport { ReactNode } from \"react\";\n\ninterface SubNavContainerProps {\n children: ReactNode;\n onPointerDown: (val: number) => void;\n buttons: {\n label: string;\n id: number;\n }[];\n activeButtonId: number;\n}\n\nconst mainWrapper = css`\n display: flex;\n height: 100%;\n max-height: 100%;\n`;\n\nconst rightWrapper = css`\n flex-grow: 1;\n overflow: hidden;\n overflow-y: scroll;\n`;\n\nconst rightWrapperBody = css`\n padding: var(--ddk-component-sub-nav-container-padding-medium);\n`;\n\nexport const SubNavContainer = ({\n children,\n onPointerDown,\n buttons,\n activeButtonId,\n}: SubNavContainerProps) => (\n <div css={mainWrapper}>\n <SubNav\n onPointerDown={onPointerDown}\n activeButtonId={activeButtonId}\n buttons={buttons}\n />\n <div css={rightWrapper}>\n <div css={rightWrapperBody}>{children}</div>\n </div>\n </div>\n);\n","import styled from \"@emotion/styled\";\nimport { useEffect, useState } from \"react\";\n\nexport interface SwitchButtonProps {\n active?: boolean;\n disabled?: boolean;\n}\n\nconst SwitchButton = styled.div<SwitchButtonProps>`\n align-items: center;\n\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-switch-background-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-switch-background-color-active)\"\n : \"var(--ddk-component-switch-background-color-default)\"};\n\n border-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-switch-border-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-switch-border-color-active)\"\n : \"var(--ddk-component-switch-border-color-default)\"};\n\n border-radius: var(--ddk-component-switch-border-radius);\n border-style: var(--ddk-generic-solid-border-style);\n border-width: var(--ddk-component-switch-border-width);\n\n border-top-width: ${(props) =>\n props.active && \"var(--ddk-component-switch-border-top-width-active)\"};\n border-bottom-width: ${(props) =>\n props.active && \"var(--ddk-component-switch-border-bottom-width-active)\"};\n\n box-sizing: border-box;\n\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-switch-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-switch-color-active)\"\n : \"var(--ddk-component-switch-color-default)\"};\n\n cursor: ${(props) =>\n props.disabled || props.active ? \"default\" : \"pointer\"};\n\n display: inline-flex;\n flex: 1;\n font-family: var(--ddk-component-switch-font-family);\n font-size: var(--ddk-component-switch-font-size);\n\n font-weight: ${(props) =>\n props.active\n ? \"var(--ddk-component-switch-font-weight-active)\"\n : \"var(--ddk-component-switch-font-weight-default)\"};\n\n gap: var(--ddk-component-switch-gap);\n height: var(--ddk-component-switch-height);\n justify-content: center;\n max-width: var(--ddk-component-switch-max-width);\n min-width: var(--ddk-component-switch-min-width);\n padding: var(--ddk-component-switch-padding-vertical)\n var(--ddk-component-switch-padding);\n padding-bottom: ${(props) =>\n props.active &&\n \"calc(var(--ddk-component-switch-padding-vertical) - var(--ddk-component-switch-padding-offset) * 2)\"};\n\n transition-duration: var(--ddk-component-switch-transition-duration);\n transition-property: var(--ddk-component-switch-transition-property);\n transition-timing-function: var(\n --ddk-component-switch-transition-timing-function\n );\n\n user-select: none;\n white-space: nowrap;\n\n &:hover {\n background-color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-switch-background-color-hover)\"};\n\n border-color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-switch-border-color-hover)\"};\n\n color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-switch-color-hover)\"};\n }\n\n &:active {\n background-color: ${(props) =>\n !props.disabled && \"var(--ddk-component-switch-background-color-active)\"};\n\n border-color: ${(props) =>\n !props.disabled && \"var(--ddk-component-switch-border-color-active)\"};\n\n color: ${(props) =>\n !props.disabled && \"var(--ddk-component-switch-color-active)\"};\n }\n`;\n\nconst SwitchLeftButton = styled(SwitchButton)<SwitchButtonProps>`\n border-radius: var(--ddk-component-switch-border-radius) 0px 0px\n var(--ddk-component-switch-border-radius);\n\n border-right-width: ${(props) =>\n props.active && \"calc(var(--ddk-component-switch-padding-offset) * 2)\"};\n\n padding-right: ${(props) =>\n props.active &&\n \"calc(var(--ddk-component-switch-padding) - var(--ddk-component-switch-padding-offset))\"};\n`;\n\nconst SwitchMiddleButton = styled(SwitchButton)<SwitchButtonProps>`\n border-radius: 0px;\n\n border-left-width: ${(props) =>\n props.active && \"calc(var(--ddk-component-switch-padding-offset) * 2)\"};\n border-right-width: ${(props) =>\n props.active && \"calc(var(--ddk-component-switch-padding-offset) * 2)\"};\n\n padding-left: ${(props) =>\n props.active &&\n \"calc(var(--ddk-component-switch-padding) - var(--ddk-component-switch-padding-offset))\"};\n\n padding-right: ${(props) =>\n props.active &&\n \"calc(var(--ddk-component-switch-padding) - var(--ddk-component-switch-padding-offset))\"};\n`;\n\nconst SwitchRightButton = styled(SwitchButton)<SwitchButtonProps>`\n border-radius: 0px var(--ddk-component-switch-border-radius)\n var(--ddk-component-switch-border-radius) 0px;\n\n border-left-width: ${(props) =>\n props.active && \"calc(var(--ddk-component-switch-padding-offset) * 2)\"};\n\n padding-left: ${(props) =>\n props.active &&\n \"calc(var(--ddk-component-switch-padding) - var(--ddk-component-switch-padding-offset))\"};\n`;\n\nexport type SwitchValue = string;\n\nexport interface SwitchOption {\n id: SwitchValue;\n label: string;\n}\n\nexport type SwitchOptions = Array<SwitchOption>;\n\nexport interface SwitchProps {\n disabled?: boolean;\n onChange?: (value: SwitchValue) => void;\n options: SwitchOptions;\n value?: SwitchValue;\n}\n\nconst SwitchContainer = styled.div`\n display: flex;\n justify-content: center;\n`;\n\nexport const Switch = ({ disabled, onChange, options, value }: SwitchProps) => {\n const [switchValue, setSwitchValue] = useState(value);\n\n useEffect(() => {\n setSwitchValue(value);\n }, [value]);\n\n const onPointerDown = (id: SwitchValue) => {\n if (disabled || id === switchValue) return;\n\n setSwitchValue(id);\n onChange?.(id);\n };\n\n return (\n <SwitchContainer>\n {options.map(({ id, label }, index) => {\n const SwitchButton =\n index === 0\n ? SwitchLeftButton\n : index === options.length - 1\n ? SwitchRightButton\n : SwitchMiddleButton;\n\n return (\n <SwitchButton\n key={id}\n active={id === switchValue}\n disabled={disabled}\n onPointerDown={() => onPointerDown(id)}\n >\n {label}\n </SwitchButton>\n );\n })}\n </SwitchContainer>\n );\n};\n","import { useComponentConfigurationContext } from \"../../core\";\nimport { Card } from \"../../styles\";\nimport { Switch, SwitchProps } from \"../switch\";\n\nexport interface SwitchCardProps extends SwitchProps {\n label: string;\n}\n\nexport const SwitchCard = ({ label, ...props }: SwitchCardProps) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <Card collapse={componentModeOverride === \"compact\"}>\n {label}\n <Switch {...props} />\n </Card>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { useEffect, useMemo, useState } from \"react\";\nimport { Card } from \"../../styles\";\nimport { Dropdown } from \"../dropdown\";\nimport { CancelProceedFooter, Content, Header, Modal } from \"../modal\";\nimport { Picker, PickerItem } from \"../picker\";\nimport { DialItem } from \"../dial\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { CompactCloseButton } from \"../compact-close-button\";\nimport { Switch } from \"../switch\";\n\nconst Container = styled.div`\n display: flex;\n flex-direction: column;\n padding: var(--ddk-component-picker-padding);\n gap: var(--ddk-component-picker-gap);\n height: 100%;\n`;\n\nexport interface SwitchPickerCardItem<T> {\n id: string;\n label: string;\n items: PickerItem<T>[];\n}\n\nconst findSelectedSwitch = <T,>(\n data: SwitchPickerCardItem<T>[],\n selectedItemID: T\n) =>\n data.find((value) =>\n value.items.find((value) => value.id === selectedItemID)\n );\n\nexport interface SwitchPickerCardProps<T> {\n cancelButtonLabel?: string;\n closeButtonLabel?: string;\n collapse?: boolean;\n data: SwitchPickerCardItem<T>[];\n disabled?: boolean;\n displayValue?: string;\n enableAnimation?: boolean;\n float?: boolean;\n label: string;\n loop?: boolean;\n numberOfVisibleItems?: number;\n onSave?: (id: T) => void;\n proceedButtonLabel?: string;\n selectedItemId?: T;\n selectedItemOffset?: number;\n unitValue?: string;\n}\n\nexport const SwitchPickerCard = <T,>({\n cancelButtonLabel,\n closeButtonLabel,\n collapse,\n disabled,\n displayValue,\n enableAnimation,\n data,\n label,\n loop,\n numberOfVisibleItems,\n onSave,\n proceedButtonLabel,\n selectedItemId,\n selectedItemOffset,\n unitValue,\n ...props\n}: SwitchPickerCardProps<T>) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n const [open, setOpen] = useState(false);\n const [saveSelectedIdValue, setSaveSelectedIdValue] = useState<T>();\n const [selectedSwitch, setSelectedSwitch] = useState<string>(\n findSelectedSwitch(data, selectedItemId)?.id ?? data[0].id\n );\n\n useEffect(() => {\n // If the switch picker card modal is opened, let's reset which switch is\n // active so the user can see the actively selected item...\n if (open)\n setSelectedSwitch(\n findSelectedSwitch(data, selectedItemId)?.id ?? data[0].id\n );\n }, [data, open, selectedItemId]);\n\n const items = useMemo(\n () => data.find((value) => value.id === selectedSwitch)?.items,\n [data, selectedSwitch]\n );\n\n useEffect(() => {\n const hasItem = items?.find((item) => item.id === saveSelectedIdValue);\n\n if (hasItem) {\n setSaveSelectedIdValue(saveSelectedIdValue);\n } else {\n if (items && items.length > 0) setSaveSelectedIdValue(items?.[0].id);\n }\n }, [data, items, saveSelectedIdValue, selectedItemId, selectedSwitch]);\n\n const pickerOnChange = ({ id }: DialItem<T>) => {\n setSaveSelectedIdValue(id);\n };\n\n const cancelProceedFooterOnSave = () => {\n if (saveSelectedIdValue !== undefined) onSave?.(saveSelectedIdValue);\n\n setOpen(false);\n };\n\n return (\n <Card collapse={collapse ?? componentModeOverride === \"compact\"} {...props}>\n {label}\n\n <Dropdown\n disabled={disabled}\n onPointerDown={() => !disabled && setOpen(true)}\n unitValue={unitValue}\n >\n {displayValue}\n </Dropdown>\n\n <Modal\n show={open}\n onClose={() => setOpen(false)}\n contain={componentModeOverride !== \"compact\"}\n >\n <Header\n title={label}\n showCloseButton\n onClose={() => setOpen(false)}\n closeButtonLabel={closeButtonLabel}\n CloseButton={\n componentModeOverride === \"compact\" ? CompactCloseButton : undefined\n }\n />\n <Container>\n <Content>\n <Switch\n options={data}\n value={selectedSwitch}\n onChange={setSelectedSwitch}\n />\n <Picker<T>\n key={(open && selectedSwitch) || \"\"}\n enableAnimation={enableAnimation}\n items={items}\n loop={loop}\n numberOfVisibleItems={numberOfVisibleItems}\n onChange={pickerOnChange}\n selectedItemId={selectedItemId}\n selectedItemOffset={selectedItemOffset}\n />\n </Content>\n <CancelProceedFooter\n cancelLabel={cancelButtonLabel}\n proceedLabel={proceedButtonLabel}\n onProceed={cancelProceedFooterOnSave}\n onCancel={() => setOpen(false)}\n />\n </Container>\n </Modal>\n </Card>\n );\n};\n","import { useState, ReactNode, useEffect, useMemo } from \"react\";\nimport { Container } from \"../../styles\";\nimport styled from \"@emotion/styled\";\n\nconst TabContainer = styled.div`\n border-bottom: var(--ddk-component-tab-list-border-bottom);\n`;\n\nconst TabContainerWithBackground = styled(TabContainer)`\n background: var(--ddk-component-tab-list-background-color);\n`;\n\nconst TabList = styled.div`\n display: flex;\n gap: var(--ddk-component-tab-list-gap);\n`;\n\nconst TabListWithPadding = styled(TabList)`\n padding: var(--ddk-component-tab-list-padding);\n`;\n\nconst TabContent = styled.div`\n overflow-y: auto;\n`;\n\nconst Tab = styled.div`\n cursor: pointer;\n font-size: var(--ddk-component-tab-font-size);\n font-weight: var(--ddk-component-tab-font-weight-default);\n letter-spacing: var(--ddk-component-tab-letter-spacing);\n line-height: var(--ddk-component-tab-line-height);\n min-width: var(--ddk-component-tab-min-width);\n overflow: hidden;\n padding: var(--ddk-component-tab-padding);\n text-align: center;\n text-overflow: ellipsis;\n white-space: nowrap;\n`;\n\nconst ActiveTab = styled(Tab)`\n color: var(--ddk-component-tab-color);\n border-bottom: var(--ddk-component-tab-border-bottom-active);\n font-weight: var(--ddk-component-tab-font-weight-active);\n`;\n\nexport interface Tab {\n id: string;\n label: string;\n content: ReactNode;\n}\n\nexport interface TabsProps {\n activeTab?: string;\n contain?: boolean;\n tabs: Tab[];\n onChange?: (tab: Tab) => void;\n showBackground?: boolean;\n}\n\nexport const Tabs = ({\n activeTab,\n contain = true,\n tabs,\n onChange,\n showBackground = true,\n}: TabsProps) => {\n const [activeTabValue, setActiveTabValue] = useState<string | undefined>(\n activeTab\n );\n\n const handleTabClick = (tab: Tab) => {\n if (activeTab === undefined) setActiveTabValue(tab.id);\n\n onChange?.(tab);\n };\n\n useEffect(() => {\n setActiveTabValue(activeTab);\n }, [activeTab]);\n\n const tabMap = useMemo(\n () =>\n tabs.reduce((previousValue: Record<string, Tab>, currentValue: Tab) => {\n return {\n ...previousValue,\n [currentValue.id]: currentValue,\n };\n }, {}),\n [tabs]\n );\n\n const TabContainerComponent = showBackground\n ? TabContainerWithBackground\n : TabContainer;\n\n const TabListComponent = contain ? TabListWithPadding : TabList;\n\n return (\n <>\n <TabContainerComponent>\n <Container>\n <TabListComponent>\n {tabs.map((tab) => {\n const TabComponent = activeTabValue === tab.id ? ActiveTab : Tab;\n\n return (\n <TabComponent\n key={tab.id}\n onPointerDown={() => handleTabClick(tab)}\n >\n {tab.label}\n </TabComponent>\n );\n })}\n </TabListComponent>\n </Container>\n </TabContainerComponent>\n <TabContent>\n <Container>\n {activeTabValue && tabMap[activeTabValue] && (\n <section>{tabMap[activeTabValue].content}</section>\n )}\n </Container>\n </TabContent>\n </>\n );\n};\n","import { useCallback } from \"react\";\nimport {\n useNavigate as useReactRouterNavigate,\n useSearchParams,\n type NavigateFunction,\n type NavigateOptions,\n type To,\n} from \"react-router-dom\";\n\nexport const useNavigate = () => {\n const reactRouterNavigate = useReactRouterNavigate();\n const [searchParams] = useSearchParams();\n\n const navigate: NavigateFunction = useCallback<NavigateFunction>(\n (a: To | number, b?: NavigateOptions) => {\n if (typeof a === \"number\") {\n reactRouterNavigate(a);\n } else {\n if (typeof a === \"string\") {\n reactRouterNavigate(\n { pathname: a, search: searchParams.toString() },\n b\n );\n } else {\n reactRouterNavigate(\n {\n pathname: a.pathname,\n search: a.search || searchParams.toString(),\n hash: a.hash,\n },\n b\n );\n }\n }\n },\n [reactRouterNavigate, searchParams]\n );\n\n return navigate;\n};\n","import { useMemo } from \"react\";\n\nexport const abbreviate = (str: string) => {\n // Initialize the result with the uppercase first letter of the input string\n let result = str[0].toUpperCase();\n\n // Iterate through the string starting from the second character\n for (let i = 1; i < str.length; i++) {\n // Check if the current character is in upper case or a number\n if (str[i] === str[i].toUpperCase() && isNaN(parseInt(str[i]))) {\n // Add the current uppercase letter to the result\n result += str[i];\n } else if (!isNaN(parseInt(str[i]))) {\n // Add numbers directly to the result\n result += str[i];\n }\n }\n\n return result;\n};\n\nexport const useAbbreviation = (str: string, enabled?: boolean) =>\n useMemo(() => {\n if (!enabled) return str;\n\n return abbreviate(str);\n }, [enabled, str]);\n","import { useCallback, useEffect, useState } from \"react\";\nimport { useParams } from \"react-router-dom\";\nimport { Tab, Tabs } from \"../tabs\";\nimport { useNavigate } from \"../../hooks\";\n\nexport interface TabRouterProps {\n baseRoute: string;\n tabs: Tab[];\n}\n\nexport const TabRouter = ({ baseRoute, tabs }: TabRouterProps) => {\n const navigate = useNavigate();\n\n const { id: activeTabId } = useParams();\n const [activeTab, setActiveTab] = useState(activeTabId);\n\n useEffect(() => {\n const found = tabs.find((tab) => tab.id === activeTabId);\n if (found) {\n setActiveTab(activeTabId);\n } else {\n navigate(tabs[0].id);\n }\n }, [activeTabId, navigate, tabs]);\n\n const handleTabsChange = useCallback(\n (tab: Tab) => {\n navigate(`${baseRoute}/${tab.id}`);\n setActiveTab(tab.id);\n },\n [baseRoute, navigate]\n );\n\n return <Tabs tabs={tabs} activeTab={activeTab} onChange={handleTabsChange} />;\n};\n","import React, { useEffect, useState } from \"react\";\n\ninterface TapPosition {\n x: number;\n y: number;\n}\n\nexport const TapEventViewer: React.FC = () => {\n const [tap, setTap] = useState<TapPosition | null>(null);\n\n useEffect(() => {\n const handleTap = (event: MouseEvent | TouchEvent) => {\n // Determine the tap position based on the event type\n const x =\n (event as MouseEvent).clientX ||\n (event as TouchEvent).touches[0].clientX;\n const y =\n (event as MouseEvent).clientY ||\n (event as TouchEvent).touches[0].clientY;\n\n // Set the tap position in the state\n setTap({ x, y });\n\n // Remove the tap after one second\n const timeoutId = setTimeout(() => {\n setTap(null);\n }, 1000); // 1 second\n\n // Cleanup timeout on the next tap event\n return () => {\n clearTimeout(timeoutId);\n };\n };\n\n // Add event listeners for both click and touchstart\n document.addEventListener(\"click\", handleTap);\n document.addEventListener(\"touchstart\", handleTap);\n\n // Clean up the event listeners when the component unmounts\n return () => {\n document.removeEventListener(\"click\", handleTap);\n document.removeEventListener(\"touchstart\", handleTap);\n };\n }, []);\n\n return (\n <div>\n {tap && (\n <div\n style={{\n position: \"absolute\",\n top: tap.y,\n left: tap.x,\n backgroundColor: \"rgba(255, 0, 0, 0.5)\",\n borderRadius: \"50%\",\n width: \"40px\",\n height: \"40px\",\n pointerEvents: \"none\",\n transform: \"translate(-50%, -50%)\",\n zIndex: 9999, // Highest z-index\n }}\n />\n )}\n </div>\n );\n};\n","import { useEffect, useState } from \"react\";\nimport { Footer, Header, Modal, type HeaderProps } from \"../modal\";\nimport { Button, Input } from \"../../styles\";\nimport { Keyboard } from \"../keyboard\";\nimport { Switch, SwitchProps } from \"../switch\";\nimport styled from \"@emotion/styled\";\n\ninterface TimeInputModalProps extends SwitchProps, HeaderProps {\n onComplete?: () => void;\n heading: string;\n showSwitch: boolean;\n timeMode?: \"am/pm\" | \"24hour\";\n}\n\nconst LockModalContent = styled.div`\n display: flex;\n flex-direction: column;\n width: 100%;\n align-items: center;\n gap: 24px;\n`;\n\nexport const TimeInputModal = ({\n closeButtonLabel,\n onComplete,\n heading,\n showSwitch,\n timeMode,\n ...props\n}: TimeInputModalProps) => {\n const [inputValue, setInputValue] = useState(\"\");\n const [isError, setIsError] = useState<boolean>(false);\n useEffect(() => {\n processInputAndValidate();\n }, [inputValue]);\n\n const processInputAndValidate = () => {\n if (inputValue.length > 3) {\n const test = inputValue.split(\":\");\n switch (timeMode) {\n case \"am/pm\":\n if (parseInt(test?.[0]) >= 12 || parseInt(test?.[1]) >= 60) {\n setIsError(true);\n }\n break;\n case \"24hour\":\n if (parseInt(test[0]) >= 24 || parseInt(test[1]) >= 60) {\n setIsError(true);\n }\n break;\n }\n }\n };\n\n const input = async (button: string) => {\n switch (button) {\n case \"{bksp}\":\n setInputValue((value) => value?.slice(0, value.length - 1));\n setIsError(false);\n break;\n default:\n if (inputValue.length === 2) {\n if (inputValue.includes(\":\")) {\n setInputValue(inputValue + button);\n } else {\n const newValue =\n inputValue.slice(0, 1) + \":\" + inputValue.slice(1) + button;\n setInputValue(newValue);\n }\n } else if (inputValue.length === 4) {\n const newValue = inputValue.replace(\":\", \"\");\n setInputValue(\n newValue.slice(0, 2) + \":\" + newValue.slice(2) + button\n );\n } else {\n setInputValue(inputValue + button);\n }\n }\n };\n\n const keyReleased = (button: string) => {\n if (\n inputValue &&\n inputValue?.length >= 5 &&\n button !== \"{bksp}\" &&\n button !== \"{enter}\"\n ) {\n return;\n } else {\n input(button);\n }\n };\n\n const [closing, setClosing] = useState(false);\n return (\n <Modal\n show={!closing}\n onClose={() => setClosing(true)}\n onClosed={onComplete}\n >\n <Header\n closeButtonLabel={closeButtonLabel}\n title={<div>{heading}</div>}\n showCloseButton\n onClose={() => setClosing(true)}\n />\n <LockModalContent>\n {showSwitch && <Switch {...props} />}\n <Input value={inputValue} isError={isError} />\n </LockModalContent>\n <Keyboard layout=\"numLogin\" onKeyReleased={keyReleased} />\n <Footer>\n <Button>Discard changes</Button>\n <Button disabled={inputValue.length < 4 || isError}>Save</Button>\n </Footer>\n </Modal>\n );\n};\n","import { css } from \"@emotion/react\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { Card } from \"../../styles\";\nimport { Toggle, ToggleProps } from \"../toggle\";\n\nexport interface ToggleCardProps extends ToggleProps {\n alwaysShowLabel?: boolean;\n collapse?: boolean;\n label?: string;\n float?: boolean;\n toggleLabel?: string;\n stretch?: boolean;\n className?: string;\n}\n\nexport const ToggleCard = ({\n alwaysShowLabel = false,\n collapse,\n float,\n label,\n toggleLabel,\n stretch,\n ...props\n}: ToggleCardProps) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <Card\n collapse={collapse}\n css={css`\n min-height: 0px;\n width: ${stretch && \"100%\"};\n `}\n float={float}\n className={props.className}\n >\n {label}\n <Toggle\n label={\n !alwaysShowLabel && componentModeOverride === \"compact\"\n ? undefined\n : toggleLabel\n }\n {...props}\n />\n </Card>\n );\n};\n","import { NavigationButton, NavigationButtonProps } from \"../../styles\";\nimport { LinkProps, useNavigate } from \"react-router-dom\";\n\ninterface TopNavigationButtonProps extends NavigationButtonProps, LinkProps {}\n\nexport const TopNavigationButton = ({\n children,\n active = false,\n to,\n}: TopNavigationButtonProps) => {\n const navigate = useNavigate();\n\n const handlePointerDown = (event) => {\n event.preventDefault();\n\n navigate(to);\n };\n\n return (\n <NavigationButton active={active} onPointerDown={handlePointerDown}>\n {children}\n </NavigationButton>\n );\n};\n","import { LinkProps, useLocation } from \"react-router-dom\";\nimport { TopNavigationButton } from \"../top-navigation-button\";\nimport styled from \"@emotion/styled\";\n\nconst TopNavigation = styled.div`\n display: flex;\n gap: var(--ddk-component-navigation-button-list-gap);\n`;\n\ninterface TopNavigationButtonListProps {\n items: LinkProps[];\n}\n\nexport const TopNavigationButtonList = ({\n items,\n}: TopNavigationButtonListProps) => {\n const { pathname } = useLocation();\n\n return (\n <TopNavigation>\n {items.map((item, index) => (\n <TopNavigationButton\n key={index}\n active={typeof item.to === \"string\" && pathname.includes(item.to)}\n to={item.to}\n >\n {item.children}\n </TopNavigationButton>\n ))}\n </TopNavigation>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { ElementType } from \"react\";\nimport {\n ActionItemButtonProps,\n IconButton,\n IconButtonSize,\n} from \"../../styles\";\n\nconst IconButtonContainer = styled(IconButton)`\n color: var(--ddk-component-top-navigation-color);\n`;\n\nconst Label = styled.div`\n color: var(--ddk-generic-color-grey-5);\n font-size: var(--ddk-component-navigation-icon-button-font-size);\n`;\n\nexport interface TopNavigationIconButtonProps extends ActionItemButtonProps {\n icon: ElementType;\n label?: string;\n size?: IconButtonSize;\n}\n\nexport const TopNavigationIconButton = ({\n icon: Icon,\n label,\n size,\n ...props\n}: TopNavigationIconButtonProps) => (\n <IconButtonContainer size={size} icon={Icon} {...props}>\n <Label>{label}</Label>\n </IconButtonContainer>\n);\n","import styled from \"@emotion/styled\";\n\nimport {\n TopNavigationIconButton,\n TopNavigationIconButtonProps,\n} from \"../top-navigation-icon-button\";\n\nconst TopNavigation = styled.div`\n display: flex;\n gap: var(--ddk-generic-padding-large);\n`;\n\nexport interface TopNavigationIconButtonListProps {\n items: TopNavigationIconButtonProps[];\n}\n\nexport const TopNavigationIconButtonList = ({\n items,\n}: TopNavigationIconButtonListProps) => (\n <TopNavigation>\n {items.map(({ icon, label }, index) => (\n <TopNavigationIconButton\n key={index}\n icon={icon}\n label={label}\n size=\"small\"\n />\n ))}\n </TopNavigation>\n);\n","import styled from \"@emotion/styled\";\nimport { LinkProps } from \"react-router-dom\";\nimport { Container } from \"../../styles\";\nimport { TopNavigationButtonList } from \"../top-navigation-button-list\";\nimport { TopNavigationIconButtonList } from \"../top-navigation-icon-button-list\";\nimport { TopNavigationIconButtonProps } from \"../top-navigation-icon-button\";\n\nconst TopNavigationStyles = styled.div`\n background-color: var(--ddk-component-top-navigation-background-color);\n color: var(--ddk-component-top-navigation-color);\n`;\n\nconst ContainerStyles = styled.div`\n padding: var(--ddk-component-top-navigation-padding);\n display: flex;\n justify-content: space-between;\n align-items: center;\n`;\n\ninterface TopNavigationProps {\n iconNavigationItems: TopNavigationIconButtonProps[];\n navigationItems: LinkProps[];\n}\n\nexport const TopNavigation = ({\n iconNavigationItems,\n navigationItems,\n}: TopNavigationProps) => (\n <TopNavigationStyles>\n <Container>\n <ContainerStyles>\n <TopNavigationButtonList items={navigationItems} />\n <TopNavigationIconButtonList items={iconNavigationItems} />\n </ContainerStyles>\n </Container>\n </TopNavigationStyles>\n);\n","/** @jsxImportSource @emotion/react */\n\nimport { SerializedStyles, css } from \"@emotion/react\";\nimport { ReactNode } from \"react\";\nimport { Container } from \"../../styles\";\n\nconst viewStyles = css`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-view-gap);\n padding: var(--ddk-component-view-padding);\n`;\n\ninterface ViewProps {\n children: ReactNode;\n contain?: boolean;\n style?: SerializedStyles;\n}\n\nexport const View = ({ children, contain = true, style }: ViewProps) =>\n contain ? (\n <Container>\n <div css={[viewStyles, style]}>{children}</div>\n </Container>\n ) : (\n <div css={[viewStyles, style]}>{children}</div>\n );\n","import { ChevronLeftIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport { useKosTranslation } from \"@kosdev-code/kos-ui-sdk\";\nimport {\n ActionItemButtonProps,\n IconButton,\n IconButtonSize,\n} from \"../../styles\";\n\nconst BackText = () => {\n const { t } = useKosTranslation(\"common\");\n\n return t(\"close\");\n};\n\ninterface ExtendedActionItemButtonProps extends ActionItemButtonProps {\n fill?: boolean;\n label?: string | boolean;\n size?: IconButtonSize;\n}\n\nexport const VolumeBackButton = ({\n children,\n fill,\n label,\n size = \"medium\",\n ...props\n}: ExtendedActionItemButtonProps) => (\n <IconButton\n icon={fill ? ChevronLeftIcon : ChevronLeftIcon}\n size={size}\n {...props}\n >\n {label ?? <BackText />}\n </IconButton>\n);\n"],"names":["createContext","jsx","useContext","useMemo","Container","Content","jsxs","IconButtonContainer","SuccessIcon","InformationIcon","QuestionIcon","USBIcon","Label","forwardRef","TabContainer","TextContainer","Text","Description","Error","ChevronLeftIcon","ChevronRightIcon","useKosTranslation","CloseIconWithBackground","CloseIcon","CompactCloseIcon","CompactMenuIcon","MenuIcon","CloseButton","DefaultCloseButton","DefaultOpenButton","each","ctx","raf2","config","useEffect","useLayoutEffect","useRef2","update","useState","useState2","useRef3","useEffect2","useEffect3","useRef4","useEffect4","is2","animated","is3","isAnimatedString2","host","is4","useRef","useCallback","each2","React","applyAnimatedValues","is5","eachProp2","G","G2","G3","FluidValue2","priority","G4","getFluidValue2","getAnimated2","toArray2","raf3","G5","frameLoop2","callFluidObservers2","loop","eachProp3","is6","toArray3","each3","eachProp4","flush2","raf4","flushCalls2","addFluidObserver2","each4","is7","is8","each5","useContext2","useIsomorphicLayoutEffect2","is9","is11","useMemo2","toArray4","useIsomorphicLayoutEffect4","useOnce3","each7","useForceUpdate2","useContext3","usePrev2","React2","getAnimatedType2","setAnimated2","isEqual2","getAnimated3","is14","getFluidValue3","toArray5","each10","getPayload2","G6","raf5","frameLoop3","hasFluidValue2","addFluidObserver3","removeFluidObserver2","self","callFluidObservers3","Globals","createStringInterpolator","prefix","unstable_batchedUpdates","colors","css","ModalContainer","createPortal","Suspense","ErrorIconWithBackground","InformationIconWithBackground","MessageInformationIconWithBackground","LoaderIconWithBackground","InformationQuestionIconWithBackground","MessageQuestionIconWithBackground","SuccessIconWithBackground","Fragment","Indicator","CardTitle","visibleItems","useGesture","value","DropdownIcon","ErrorIcon","kosComponent","module","require$$0","this","t","e","n","r","o","i","a","s","u","c","l","f","p","d","h","v","y","g","m","b","w","x","O","E","S","k","P","I","C","A","M","N","D","T","layoutName","KeyboardReact","inputCardStyles","error","InputCard","EyeOpenIcon","EyeOffIcon","className","useKosDateFormats","useKosTimeFormats","format","CloseSidebarIcon","StatusCardHeader","StatusDots","StepStatus","SwitchButton","useReactRouterNavigate","useSearchParams","useParams","to","useNavigate","TopNavigation","useLocation"],"mappings":"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","x_google_ignoreList":[37,38,39,40,41,64]}
1
+ {"version":3,"file":"index.cjs","sources":["../../../packages/kos-ddk-components/src/core/configuration/component-configuration-context.tsx","../../../packages/kos-ddk-components/src/core/experience/experience.tsx","../../../packages/kos-ddk-components/src/core/experience/view-experience.ts","../../../packages/kos-ddk-components/src/styles/action-item/action-item.tsx","../../../packages/kos-ddk-components/src/styles/action-item-button/action-item-button.tsx","../../../packages/kos-ddk-components/src/styles/button/button.tsx","../../../packages/kos-ddk-components/src/styles/card/card.tsx","../../../packages/kos-ddk-components/src/styles/card-button/card-button.tsx","../../../packages/kos-ddk-components/src/styles/container/container.tsx","../../../packages/kos-ddk-components/src/styles/icon-button/icon-button.tsx","../../../packages/kos-ddk-components/src/styles/icon/green-tick-icon-style/green-tick-icon-style.tsx","../../../packages/kos-ddk-components/src/styles/icon/information-icon-style/information-icon-style.tsx","../../../packages/kos-ddk-components/src/styles/icon/question-icon-style/question-icon-style.tsx","../../../packages/kos-ddk-components/src/styles/icon/usb-icon-style/usb-icon-style.tsx","../../../packages/kos-ddk-components/src/styles/info-card-header/info-card-header.tsx","../../../packages/kos-ddk-components/src/styles/info-container/info-container.tsx","../../../packages/kos-ddk-components/src/styles/typography/typography.tsx","../../../packages/kos-ddk-components/src/styles/input/input.tsx","../../../packages/kos-ddk-components/src/styles/instruction-card/instruction-card.tsx","../../../packages/kos-ddk-components/src/styles/list-container/list-container.tsx","../../../packages/kos-ddk-components/src/styles/nav-button/navigation-button.tsx","../../../packages/kos-ddk-components/src/styles/sidebar/sidebar.ts","../../../packages/kos-ddk-components/src/styles/sub-nav-button/sub-nav-button.tsx","../../../packages/kos-ddk-components/src/styles/summary-action-item/summary-action-item.tsx","../../../packages/kos-ddk-components/src/styles/tab-view-container/tab-view-container.tsx","../../../packages/kos-ddk-components/src/styles/tap-and-hold-button/tap-and-hold-button.tsx","../../../packages/kos-ddk-components/src/styles/text/text.tsx","../../../packages/kos-ddk-components/src/components/action-card/action-card.tsx","../../../packages/kos-ddk-components/src/components/back-button/back-button.tsx","../../../packages/kos-ddk-components/src/components/card-button-grid/card-button-grid.tsx","../../../packages/kos-ddk-components/src/components/close-button/close-button.tsx","../../../packages/kos-ddk-components/src/components/compact-close-button/compact-close-button.tsx","../../../packages/kos-ddk-components/src/components/modal/content/content.tsx","../../../packages/kos-ddk-components/src/components/modal/footer/footer.tsx","../../../packages/kos-ddk-components/src/components/modal/footer/cancel-proceed-footer.tsx","../../../packages/kos-ddk-components/src/components/menu-button/menu-button.tsx","../../../packages/kos-ddk-components/src/components/modal/header/header.tsx","../../../node_modules/@react-spring/rafz/dist/react-spring_rafz.modern.mjs","../../../node_modules/@react-spring/shared/dist/react-spring_shared.modern.mjs","../../../node_modules/@react-spring/animated/dist/react-spring_animated.modern.mjs","../../../node_modules/@react-spring/core/dist/react-spring_core.modern.mjs","../../../node_modules/@react-spring/web/dist/react-spring_web.modern.mjs","../../../packages/kos-ddk-components/src/components/modal/modal-content/modal-content.tsx","../../../packages/kos-ddk-components/src/components/modal/modal.tsx","../../../packages/kos-ddk-components/src/components/modal/modal-container/modal-container.tsx","../../../packages/kos-ddk-components/src/components/workflow-modal/workflow-modal.tsx","../../../packages/kos-ddk-components/src/components/confirmation-modal/confirmation-modal.tsx","../../../packages/kos-ddk-components/src/components/dashboard-card/dashboard-card.tsx","../../../packages/kos-ddk-components/src/components/dial/dial.tsx","../../../packages/kos-ddk-components/src/components/dropdown/dropdown.tsx","../../../packages/kos-ddk-components/src/components/failure-card/failure-card.tsx","../../../packages/kos-ddk-components/src/components/table/table.tsx","../../../packages/kos-ddk-components/src/components/info-table/info-table.tsx","../../../packages/kos-ddk-components/src/components/frame/frame-body/frame-body.tsx","../../../packages/kos-ddk-components/src/components/frame/frame-container/frame-container.tsx","../../../packages/kos-ddk-components/src/tools/bytes.ts","../../../packages/kos-ddk-components/src/tools/colour.ts","../../../packages/kos-ddk-components/src/tools/useKeyboardToggle.ts","../../../packages/kos-ddk-components/src/components/fuel-gauge/fuel-gauge.tsx","../../../packages/kos-ddk-components/src/components/full-screen-modal/full-screen-modal.tsx","../../../packages/kos-ddk-components/src/components/full-screen-modal/full-screen-header/full-screen-header.tsx","../../../packages/kos-ddk-components/src/components/grid/grid.tsx","../../../packages/kos-ddk-components/src/components/info-card/info-card.tsx","../../../packages/kos-ddk-components/src/components/info-message/info-message.tsx","../../../node_modules/react-simple-keyboard/build/index.js","../../../packages/kos-ddk-components/src/components/keyboard/keyboard.tsx","../../../packages/kos-ddk-components/src/components/input-card/input-card.tsx","../../../packages/kos-ddk-components/src/components/input-range-with-unit-card/input-range-with-unit-card.tsx","../../../packages/kos-ddk-components/src/components/input-type-password/input-type-password.tsx","../../../packages/kos-ddk-components/src/components/multi-dial/multi-dial.tsx","../../../packages/kos-ddk-components/src/components/picker-item-renderer/picker-item-renderer.tsx","../../../packages/kos-ddk-components/src/components/multi-picker/multi-picker.tsx","../../../packages/kos-ddk-components/src/components/multi-picker-card/multi-picker-card.tsx","../../../packages/kos-ddk-components/src/components/notification-card/notification-card.tsx","../../../packages/kos-ddk-components/src/components/numpad/numpad.tsx","../../../packages/kos-ddk-components/src/components/picker/picker.tsx","../../../packages/kos-ddk-components/src/components/picker-card/picker-card.tsx","../../../packages/kos-ddk-components/src/components/placeholder-message/placeholder-message.tsx","../../../packages/kos-ddk-components/src/components/portal/portal.tsx","../../../packages/kos-ddk-components/src/components/status-bar/status-bar.tsx","../../../packages/kos-ddk-components/src/components/progress-bar/progress-bar.tsx","../../../packages/kos-ddk-components/src/components/radio-card/radio-card.tsx","../../../packages/kos-ddk-components/src/components/schedule-table/schedule-table-header.tsx","../../../packages/kos-ddk-components/src/components/toggle/toggle.tsx","../../../packages/kos-ddk-components/src/components/schedule-table/schedule-table-row.tsx","../../../packages/kos-ddk-components/src/components/schedule-table/schedule-table.tsx","../../../packages/kos-ddk-components/src/components/sidebar-close-button/sidebar-close-button.tsx","../../../packages/kos-ddk-components/src/components/sidebar/sidebar.tsx","../../../packages/kos-ddk-components/src/components/static-input-card/static-input-card.tsx","../../../packages/kos-ddk-components/src/components/status-card/status-card.tsx","../../../packages/kos-ddk-components/src/components/status-indicator/status-indicator.tsx","../../../packages/kos-ddk-components/src/components/steps-indicator-label/steps-indicator-label.tsx","../../../packages/kos-ddk-components/src/components/steps-side-nav/steps-side-nav.tsx","../../../packages/kos-ddk-components/src/components/sub-nav/sub-nav.tsx","../../../packages/kos-ddk-components/src/components/sub-nav-container/sub-nav-container.tsx","../../../packages/kos-ddk-components/src/components/switch/switch.tsx","../../../packages/kos-ddk-components/src/components/switch-card/switch-card.tsx","../../../packages/kos-ddk-components/src/components/switch-picker-card/switch-picker-card.tsx","../../../packages/kos-ddk-components/src/components/tabs/tabs.tsx","../../../packages/kos-ddk-components/src/hooks/router/useNavigate.tsx","../../../packages/kos-ddk-components/src/hooks/text/useAbbreviation.tsx","../../../packages/kos-ddk-components/src/components/tab-router/tab-router.tsx","../../../packages/kos-ddk-components/src/components/tap-event-viewer/tap-event-viewer.tsx","../../../packages/kos-ddk-components/src/components/time-input-modal/time-input-modal.tsx","../../../packages/kos-ddk-components/src/components/toggle-card/toggle-card.tsx","../../../packages/kos-ddk-components/src/components/top-navigation-button/top-navigation-button.tsx","../../../packages/kos-ddk-components/src/components/top-navigation-button-list/top-navigation-button-list.tsx","../../../packages/kos-ddk-components/src/components/top-navigation-icon-button/top-navigation-icon-button.tsx","../../../packages/kos-ddk-components/src/components/top-navigation-icon-button-list/top-navigation-icon-button-list.tsx","../../../packages/kos-ddk-components/src/components/top-navigation/top-navigation.tsx","../../../packages/kos-ddk-components/src/components/view/view.tsx","../../../packages/kos-ddk-components/src/components/volume-back-button/volume-back-button.tsx"],"sourcesContent":["import { ReactNode, createContext, useContext } from \"react\";\nimport type { ModalMode } from \"../../components\";\n\nexport type ComponentMode = \"standard\" | \"compact\";\n\nconst defaultComponentConfigurationOptions: ComponentConfigurationOptions = {\n componentModeOverride: \"standard\",\n enableDialAnimation: true,\n enableModalAnimation: true,\n enableSidebarAnimation: true,\n modalModeOverride: undefined,\n};\n\ninterface ComponentConfigurationOptions {\n componentModeOverride?: ComponentMode;\n enableDialAnimation?: boolean;\n enableModalAnimation?: boolean;\n enableSidebarAnimation?: boolean;\n modalModeOverride?: ModalMode;\n}\n\nexport const ComponentConfigurationContext =\n createContext<ComponentConfigurationOptions>(\n defaultComponentConfigurationOptions\n );\n\ninterface ComponentConfigurationProviderProps {\n children?: ReactNode;\n value?: ComponentConfigurationOptions;\n}\n\nexport const ComponentConfigurationProvider = ({\n children,\n value = defaultComponentConfigurationOptions,\n}: ComponentConfigurationProviderProps) => (\n <ComponentConfigurationContext.Provider value={value}>\n {children}\n </ComponentConfigurationContext.Provider>\n);\n\nexport const useComponentConfigurationContext = () => {\n const context = useContext(ComponentConfigurationContext);\n if (!context) {\n throw new Error(\n \"useComponentConfigurationContext must be used within a ComponentConfigurationProvider\"\n );\n }\n return context;\n};\n","export interface ExperienceProps {\n onComplete: () => void;\n onSkip?: () => void;\n}\n\nexport type Experience<T extends Record<string, any> = Record<string, any>> =\n React.FC<ExperienceProps & T>;\n\nexport interface ExperienceMap {\n [key: string]: Experience;\n}\n\nexport const useExperience = (id: string, experienceMap: ExperienceMap) =>\n experienceMap[id];\n","import { useMemo } from \"react\";\nimport { Experience } from \".\";\n\nexport interface ViewExperience {\n id: string;\n label: string;\n component?: Experience;\n}\n\nexport interface ViewExperienceMap {\n [key: string]: ViewExperience;\n}\n\nexport const useViewExperienceListMap = (\n viewExperienceList: ViewExperience[]\n) =>\n useMemo(\n () =>\n viewExperienceList.reduce<ViewExperienceMap>(\n (previousValue, currentValue) => {\n previousValue[currentValue.id] = currentValue;\n\n return previousValue;\n },\n {}\n ),\n [viewExperienceList]\n );\n\nexport const useViewExperience = (\n id?: string,\n experienceMap?: ViewExperienceMap\n) => {\n if (!id || !experienceMap) return undefined;\n\n return experienceMap[id]?.component;\n};\n","import isPropValid from \"@emotion/is-prop-valid\";\nimport styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\n\nexport interface ActionItemProps {\n children?: ReactNode;\n disabled?: boolean;\n shadow?: boolean;\n}\n\nexport const ActionItem = styled(\"div\", {\n shouldForwardProp: (prop) => isPropValid(prop),\n})<ActionItemProps>`\n align-items: center;\n\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-action-item-background-color-disabled)\"\n : \"var(--ddk-component-action-item-background-color-default)\"};\n\n border-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-action-item-border-color-disabled)\"\n : \"var(--ddk-component-action-item-border-color-default)\"};\n\n border-radius: var(--ddk-component-action-item-border-radius);\n border-style: solid;\n border-width: var(--ddk-component-action-item-border-width);\n\n box-shadow: ${(props) =>\n props.shadow\n ? \"var(--ddk-generic-box-shadow-large)\"\n : \"var(--ddk-component-action-item-box-shadow)\"};\n\n box-sizing: border-box;\n\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-action-item-color-disabled)\"\n : \"var(--ddk-component-action-item-color-default)\"};\n\n display: inline-flex;\n font-family: var(--ddk-component-action-item-font-family);\n font-size: var(--ddk-semantic-control-xs-font-size);\n font-weight: var(--ddk-component-action-item-font-weight);\n height: var(--ddk-component-action-item-height);\n justify-content: space-between;\n min-width: var(--ddk-component-action-item-min-width);\n overflow: hidden;\n padding: var(--ddk-component-action-item-padding);\n user-select: none;\n white-space: nowrap;\n`;\n","import isPropValid from \"@emotion/is-prop-valid\";\nimport styled from \"@emotion/styled\";\nimport { ActionItem, ActionItemProps } from \"../action-item\";\nimport type { SerializedStyles } from \"@emotion/react\";\n\nconst Container = styled.div`\n align-items: center;\n display: flex;\n gap: var(--ddk-component-action-item-button-container-gap);\n white-space: nowrap;\n width: var(--ddk-component-action-item-button-container-width);\n`;\n\nconst Content = styled.div`\n display: flex;\n justify-content: space-between;\n width: 100%;\n`;\ninterface UnitValueProps {\n disabled?: boolean;\n}\n\nconst UnitValue = styled.div<UnitValueProps>`\n align-items: center;\n\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-action-item-unit-background-color-disabled)\"\n : \"var(--ddk-component-action-item-unit-background-color-default)\"};\n\n border-color: var(--ddk-component-action-item-unit-border-color);\n border-left-style: solid;\n border-left-width: var(--ddk-component-action-item-unit-border-width);\n border-radius: var(--ddk-component-action-item-unit-border-radius);\n box-sizing: border-box;\n\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-action-item-unit-color-disabled)\"\n : \"var(--ddk-component-action-item-unit-color-default)\"};\n\n display: flex;\n font-size: var(--ddk-component-action-item-unit-font-size);\n font-weight: var(--ddk-component-action-item-unit-font-weight);\n height: var(--ddk-component-action-item-unit-height);\n justify-content: center;\n margin: var(--ddk-component-action-item-unit-margin);\n min-width: var(--ddk-component-action-item-unit-min-width);\n padding: var(--ddk-component-action-item-unit-padding);\n white-space: nowrap;\n`;\n\nexport type UnitStyle = \"inline\" | \"external\";\n\nexport interface ActionItemButtonProps extends ActionItemProps {\n active?: boolean;\n Icon?: React.FunctionComponent;\n unitStyle?: UnitStyle;\n unitValue?: string;\n onPointerDown?: () => void;\n css?: SerializedStyles;\n}\n\nexport const ActionItemButtonStyles = styled(ActionItem, {\n shouldForwardProp: (prop) => isPropValid(prop),\n})<ActionItemButtonProps>`\n align-items: center;\n\n border-color: ${(props) =>\n props.active &&\n \"var(--ddk-component-action-item-button-border-color-active)\"};\n\n box-sizing: border-box;\n\n color: ${(props) =>\n props.active && \"var(--ddk-component-action-item-button-color-active)\"};\n\n cursor: ${(props) =>\n props.disabled || props.active ? \"default\" : \"pointer\"};\n\n gap: var(--ddk-component-action-item-button-gap);\n\n padding: ${(props) =>\n props.unitValue && \"0 0 0 var(--ddk-generic-padding-medium)\"};\n\n text-decoration: none;\n transition-duration: var(\n --ddk-component-action-item-button-transition-duration\n );\n transition-property: var(\n --ddk-component-action-item-button-transition-property\n );\n transition-timing-function: var(\n --ddk-component-action-item-button-transition-timing-function\n );\n width: 100%;\n\n &:hover {\n background-color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-action-item-button-background-color-hover)\"};\n\n border-color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-action-item-button-border-color-hover)\"};\n\n color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-action-item-button-color-hover)\"};\n }\n\n &:active {\n background-color: ${(props) =>\n !props.disabled &&\n \"var(--ddk-component-action-item-button-background-color-active)\"};\n\n border-color: ${(props) =>\n !props.disabled &&\n \"var(--ddk-component-action-item-button-border-color-active)\"};\n\n color: ${(props) =>\n !props.disabled &&\n \"var(--ddk-component-action-item-button-color-active)\"};\n }\n\n & > svg {\n color: ${(props) =>\n !props.disabled && \"var(--ddk-component-action-item-icon-color)\"};\n width: var(--ddk-generic-font-size-large);\n height: var(--ddk-generic-font-size-large);\n }\n`;\n\nexport const ActionItemButton = ({\n children,\n disabled,\n unitStyle = \"external\",\n unitValue,\n ...props\n}: ActionItemButtonProps) => (\n <Container>\n {unitStyle === \"inline\" ? (\n <ActionItemButtonStyles\n disabled={disabled}\n unitValue={unitValue}\n {...props}\n >\n <Content>{children}</Content>\n {unitValue !== undefined && (\n <UnitValue disabled={disabled}>{unitValue}</UnitValue>\n )}\n </ActionItemButtonStyles>\n ) : (\n <ActionItemButtonStyles disabled={disabled} {...props}>\n {children}\n </ActionItemButtonStyles>\n )}\n {unitStyle === \"external\" && unitValue !== undefined && unitValue}\n </Container>\n);\n","import styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\n\nexport interface ButtonProps\n extends React.DetailedHTMLProps<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n HTMLButtonElement\n > {\n active?: boolean;\n children: ReactNode;\n disabled?: boolean;\n shadow?: boolean;\n state?: string;\n mode?: \"primary\";\n}\n\nconst DefaultButton = styled.button<ButtonProps>`\n align-items: center;\n\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-button-background-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-button-background-color-active)\"\n : \"var(--ddk-component-button-background-color-default)\"};\n\n border-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-button-border-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-button-border-color-active)\"\n : \"var(--ddk-component-button-border-color-default)\"};\n\n border-radius: var(--ddk-component-button-border-radius);\n border-style: solid;\n border-width: var(--ddk-component-button-border-width-default);\n\n box-shadow: ${(props) =>\n props.shadow && \"var(--ddk-generic-box-shadow-large)\"};\n\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-button-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-button-color-active)\"\n : \"var(--ddk-component-button-color-default)\"};\n\n cursor: ${(props) =>\n props.disabled || props.active ? \"default\" : \"pointer\"};\n\n display: inline-flex;\n font-family: var(--ddk-component-button-font-family);\n font-size: var(--ddk-component-button-font-size);\n font-weight: var(--ddk-component-button-font-weight);\n gap: var(--ddk-component-button-gap);\n height: var(--ddk-component-button-height);\n justify-content: center;\n overflow: hidden;\n padding: var(--ddk-component-button-padding);\n user-select: none;\n text-overflow: ellipsis;\n transition-duration: var(--ddk-component-button-transition-duration);\n transition-property: var(--ddk-component-button-transition-property);\n transition-timing-function: var(\n --ddk-component-button-transition-timing-function\n );\n white-space: nowrap;\n min-width: var(--ddk-component-button-min-width);\n\n &:hover {\n background-color: ${(props) =>\n !(props.active || props.disabled || props.state) &&\n \"var(--ddk-component-button-background-color-hover)\"};\n\n border-color: ${(props) =>\n !(props.active || props.disabled || props.state) &&\n \"var(--ddk-component-button-border-color-hover)\"};\n\n color: ${(props) =>\n !(props.active || props.disabled || props.state) &&\n \"var(--ddk-component-button-color-hover)\"};\n }\n\n &:active {\n background-color: ${(props) =>\n !(props.disabled || props.state) &&\n \"var(--ddk-component-button-background-color-active)\"};\n\n border-color: ${(props) =>\n !(props.disabled || props.state) &&\n \"var(--ddk-component-button-border-color-active)\"};\n\n color: ${(props) =>\n !(props.disabled || props.state) &&\n \"var(--ddk-component-button-color-active)\"};\n }\n`;\n\nconst PrimaryButton = styled(DefaultButton)`\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-button-primary-background-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-button-primary-background-color-active)\"\n : \"var(--ddk-component-button-primary-background-color-default)\"};\n\n border-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-button-border-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-button-border-color-active)\"\n : \"var(--ddk-component-button-border-color-default)\"};\n\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-button-primary-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-button-primary-color-active)\"\n : \"var(--ddk-component-button-primary-color-default)\"};\n`;\n\nexport const Button = ({ disabled, onPointerDown, ...props }: ButtonProps) => {\n const pointerDown = (event) => {\n if (disabled) return;\n\n onPointerDown?.(event);\n };\n\n return props.mode === \"primary\" ? (\n <PrimaryButton disabled={disabled} onPointerDown={pointerDown} {...props} />\n ) : (\n <DefaultButton disabled={disabled} onPointerDown={pointerDown} {...props} />\n );\n};\n","import isPropValid from \"@emotion/is-prop-valid\";\nimport styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\n\nexport interface CardProps {\n children?: ReactNode;\n className?: string;\n collapse?: boolean;\n disabled?: boolean;\n float?: boolean;\n padding?: \"large\" | \"small\" | \"x-large\";\n}\n\nexport const Card = styled(\"div\", {\n shouldForwardProp: (prop) => isPropValid(prop),\n})<CardProps>`\n align-items: ${(props) => (props.collapse ? \"stretch\" : \"center\")};\n\n background-color: ${(props) =>\n props.collapse || props.float\n ? \"transparent\"\n : props.disabled\n ? \"var(--ddk-component-card-background-color-disabled)\"\n : \"var(--ddk-component-card-background-color-default)\"};\n\n border-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-card-border-color-disabled)\"\n : \"var(--ddk-component-card-border-color-default)\"};\n\n border-radius: var(--ddk-component-card-border-radius);\n border-style: ${(props) =>\n props.collapse || props.float ? \"none\" : \"solid\"};\n border-width: var(--ddk-component-card-border-width);\n\n box-shadow: ${(props) =>\n !props.collapse && !props.float && \"var(--ddk-component-card-box-shadow)\"};\n\n box-sizing: border-box;\n\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-card-color-disabled)\"\n : props.collapse || props.float\n ? \"var(--ddk-component-card-color-light)\"\n : \"var(--ddk-component-card-color-default)\"};\n\n display: flex;\n flex-direction: ${(props) => (props.collapse ? \"column\" : \"row\")};\n font-family: var(--ddk-component-card-font-family);\n font-size: var(--ddk-component-card-font-size);\n font-weight: var(--ddk-component-card-font-weight);\n gap: var(--ddk-component-card-gap);\n justify-content: var(--ddk-component-card-justify-content);\n margin-left: auto;\n min-height: var(--ddk-component-card-min-height);\n\n padding: ${(props) =>\n props.collapse || props.float\n ? \"0\"\n : props.padding === \"large\"\n ? \"var(--ddk-component-card-padding-large)\"\n : props.padding === \"x-large\"\n ? \"var(--ddk-component-card-padding-x-large)\"\n : \"var(--ddk-component-card-padding-small)\"};\n\n user-select: none;\n width: 100%;\n`;\n","import isPropValid from \"@emotion/is-prop-valid\";\nimport styled from \"@emotion/styled\";\nimport { Card, CardProps } from \"../card\";\n\nexport interface CardButtonProps extends CardProps {\n active?: boolean;\n onPointerDown?: () => void;\n}\n\nexport const CardButton = styled(Card, {\n shouldForwardProp: (prop) => isPropValid(prop),\n})<CardButtonProps>`\n align-items: center;\n\n background-color: ${(props) =>\n props.active && \"var(--ddk-component-card-button-background-color-active)\"};\n\n border-color: ${(props) =>\n props.active && \"var(--ddk-component-card-button-border-color-active)\"};\n\n color: ${(props) =>\n props.active && \"var(--ddk-component-card-button-color-active)\"};\n\n cursor: ${(props) =>\n props.disabled || props.active ? \"default\" : \"pointer\"};\n\n font-family: var(--ddk-component-card-button-font-family);\n font-size: var(--ddk-component-card-button-font-size);\n font-weight: var(--ddk-component-card-button-font-weight);\n gap: var(--ddk-component-card-button-gap);\n padding: var(--ddk-component-card-button-padding);\n box-sizing: border-box;\n height: var(--ddk-component-card-button-height);\n text-decoration: none;\n transition-duration: var(--ddk-component-card-button-transition-duration);\n transition-property: var(--ddk-component-card-button-transition-property);\n transition-timing-function: var(\n --ddk-component-card-button-transition-timing-function\n );\n\n &:hover {\n background-color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-card-button-background-color-hover)\"};\n\n border-color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-card-button-border-color-hover)\"};\n\n color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-card-button-color-hover)\"};\n }\n\n &:active {\n background-color: var(--ddk-component-card-button-background-color-active);\n border-color: var(--ddk-component-card-button-border-color-active);\n color: var(--ddk-component-card-button-color-active);\n }\n svg {\n width: var(--ddk-component-card-button-svg-size);\n height: var(--ddk-component-card-button-svg-size);\n }\n`;\n","import styled from \"@emotion/styled\";\n\nexport interface ContainerProps {\n contain?: boolean;\n size?: \"small\" | \"medium\" | \"large\";\n}\n\nexport const Container = styled.div<ContainerProps>`\n display: flex;\n flex-direction: column;\n height: 100%;\n margin: 0 auto;\n gap: 16px;\n max-width: ${(props) =>\n props.contain === false\n ? \"\"\n : props.size === \"small\"\n ? \"var(--ddk-component-container-max-width-small)\"\n : props.size === \"medium\"\n ? \"var(--ddk-component-container-max-width-medium)\"\n : \"var(--ddk-component-page-max-width, var(--ddk-component-container-max-width-large))\"};\n\n overflow-y: auto;\n width: 100%;\n`;\n","import styled from \"@emotion/styled\";\nimport { ElementType, ReactNode } from \"react\";\n\nexport type IconButtonSize = \"small\" | \"medium\" | \"large\";\n\ninterface IconButtonProps {\n active?: boolean;\n children?: ReactNode;\n disabled?: boolean;\n icon: ElementType;\n size?: IconButtonSize;\n onPointerDown?: () => void;\n}\n\nconst IconButtonContainer = styled.div<Omit<IconButtonProps, \"icon\">>`\n align-items: center;\n\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-icon-button-icon-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-icon-button-icon-color-active)\"\n : \"var(--ddk-component-icon-button-icon-color-default)\"};\n\n cursor: ${(props) =>\n props.disabled || props.active ? \"default\" : \"pointer\"};\n\n display: inline-flex;\n flex-direction: column;\n gap: var(--ddk-component-icon-button-gap);\n text-align: center;\n\n font-size: ${(props) =>\n props.size === \"small\"\n ? \"var(--ddk-component-icon-button-width-small)\"\n : props.size === \"medium\"\n ? \"var(--ddk-component-icon-button-width-medium)\"\n : \"var(--ddk-component-icon-button-width-large)\"};\n\n position: relative;\n\n user-select: none;\n transition-duration: var(--ddk-component-icon-button-transition-duration);\n transition-property: var(--ddk-component-icon-button-transition-property);\n transition-timing-function: var(\n --ddk-component-icon-button-transition-timing-function\n );\n\n &:hover,\n &:hover > div {\n color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-icon-button-color-hover)\"};\n }\n\n &:active,\n &:active > div {\n color: ${(props) =>\n !props.disabled && \"var(--ddk-component-icon-button-color-active)\"};\n }\n\n & > div {\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-icon-button-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-icon-button-color-active)\"\n : \"var(--ddk-component-icon-button-color-default)\"};\n\n font-size: ${(props) =>\n props.size === \"small\"\n ? \"var(--ddk-component-icon-button-font-size-small)\"\n : props.size === \"medium\"\n ? \"var(--ddk-component-icon-button-font-size-medium)\"\n : \"var(--ddk-component-icon-button-font-size-large)\"};\n }\n`;\n\nexport const IconButton = ({\n children,\n icon: Icon,\n size = \"medium\",\n ...props\n}: IconButtonProps) => (\n <IconButtonContainer size={size} {...props}>\n <Icon />\n {children && <div>{children}</div>}\n </IconButtonContainer>\n);\n","import styled from \"@emotion/styled\";\nimport { SuccessIcon } from \"@kosdev-code/kos-ddk-styles\";\n\nexport const GreenTickIconStyle = styled(SuccessIcon)`\n box-sizing: var(--ddk-component-green-tick-icon-box-sizing);\n min-width: var(--ddk-component-green-tick-icon-min-width);\n min-height: var(--ddk-component-green-tick-icon-min-height);\n border-radius: var(--ddk-component-green-tick-icon-border-radius);\n background: var(--ddk-component-green-tick-icon-background);\n color: var(--ddk-component-green-tick-icon-color);\n padding: var(--ddk-component-green-tick-icon-padding);\n`;\n","import styled from \"@emotion/styled\";\nimport { InformationIcon } from \"@kosdev-code/kos-ddk-styles\";\n\nexport const InformationIconStyle = styled(InformationIcon)`\n min-width: var(--ddk-component-information-icon-min-width);\n min-height: var(--ddk-component-information-icon-min-height);\n border-radius: var(--ddk-component-information-icon-border-radius);\n background: var(--ddk-component-information-icon-background);\n color: var(--ddk-component-information-icon-color);\n`;\n","import styled from \"@emotion/styled\";\nimport { QuestionIcon } from \"@kosdev-code/kos-ddk-styles\";\n\nexport const QuestionIconStyle = styled(QuestionIcon)`\n min-width: var(--ddk-component-question-icon-min-width);\n min-height: var(--ddk-component-question-icon-min-height);\n border-radius: var(--ddk-component-question-icon-border-radius);\n background: var(--ddk-component-question-icon-background);\n color: var(--ddk-component-question-icon-color);\n`;\n","import styled from \"@emotion/styled\";\nimport { USBIcon } from \"@kosdev-code/kos-ddk-styles\";\n\nexport const UsbIconStyle = styled(USBIcon)<{ selected?: boolean }>`\n min-width: var(--ddk-component-question-icon-min-width);\n min-height: var(--ddk-component-question-icon-min-height);\n border-radius: var(--ddk-component-question-icon-border-radius);\n background: ${(props) =>\n props.selected\n ? \"var(--ddk-component-question-icon-background-selected)\"\n : \"var(--ddk-component-question-icon-background)\"};\n color: var(--ddk-component-question-icon-color);\n`;\n","import styled from \"@emotion/styled\";\nimport { Card } from \"../card\";\n\nexport const InfoCardHead = styled(Card)`\n background-color: var(--ddk-component-info-card-header-background-color);\n border-bottom-left-radius: 0px;\n border-bottom-right-radius: 0px;\n font-weight: var(--ddk-component-info-card-header-font-weight);\n padding: var(--ddk-component-info-card-header-padding);\n`;\n","import styled from \"@emotion/styled\";\n\nexport const InfoContainer = styled.div`\n background-color: var(--ddk-component-info-container-background-color);\n border: var(--ddk-component-info-container-border);\n border-radius: var(--ddk-component-info-container-border-radius);\n font-size: var(--ddk-component-info-container-font-size);\n font-weight: var(--ddk-component-info-container-font-weight);\n padding: var(--ddk-component-info-container-padding);\n`;\n","import styled from \"@emotion/styled\";\n\nexport const LargeText = styled.div`\n color: var(--ddk-generic-color-grey-100);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: 48px;\n font-style: normal;\n font-weight: 600;\n letter-spacing: 0.72px;\n line-height: 120%;\n`;\n\nexport const Heading = styled.h1`\n color: var(--ddk-generic-color-grey-100);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: 36px;\n font-style: normal;\n font-weight: 600;\n letter-spacing: 0.9px;\n line-height: 120%;\n`;\n\nexport const Subheading = styled.h2`\n color: var(--ddk-generic-color-grey-100);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: 28px;\n font-style: normal;\n font-weight: 600;\n letter-spacing: -1.12px;\n line-height: 120%;\n`;\n\nexport const UtilityModalHeading = styled.div`\n color: var(--ddk-generic-color-grey-50, #888);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: 24px;\n font-style: normal;\n font-weight: 600;\n line-height: 120%; /* 28.8px */\n letter-spacing: -0.48px;\n user-select: none;\n`;\n\nexport const UtilityModalSubHeading = styled.div`\n color: var(--ddk-generic-color-grey-50, #888);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n line-height: 135%; /* 21.6px */\n letter-spacing: 0.64px;\n user-select: none;\n`;\n\nexport const SettingsSubheading = styled.div`\n color: var(--ddk-generic-color-grey-70, #414141);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: 20px;\n font-style: normal;\n font-weight: 600;\n line-height: 135%;\n margin-bottom: 4px;\n`;\n\nexport const Body2 = styled.p`\n color: var(--ddk-generic-color-grey-100);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: 15px;\n font-style: normal;\n font-weight: 500;\n letter-spacing: -0.225px;\n line-height: 135%;\n`;\n\nexport const SmallText = styled.div`\n color: var(--ddk-generic-color-grey-100);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: 16px;\n font-style: normal;\n font-weight: 600;\n letter-spacing: 0.48px;\n line-height: 120%;\n`;\n\n// Figma-mapped Typography Components\n\nexport const BodySmall = styled.div`\n color: var(--ddk-component-typography-body-small-color);\n font-family: var(--ddk-component-typography-body-small-font-family);\n font-size: var(--ddk-component-typography-body-small-font-size);\n font-style: var(--ddk-component-typography-body-small-font-style);\n font-weight: var(--ddk-component-typography-body-small-font-weight);\n letter-spacing: var(--ddk-component-typography-body-small-letter-spacing);\n line-height: var(--ddk-component-typography-body-small-line-height);\n`;\n\nexport const BodySmallInformation = styled(BodySmall)`\n color: var(--ddk-component-typography-label-date-information-color);\n`;\n\nexport const BodyMedium = styled.div`\n color: var(--ddk-component-typography-body-medium-color);\n font-family: var(--ddk-component-typography-body-medium-font-family);\n font-size: var(--ddk-component-typography-body-medium-font-size);\n font-style: var(--ddk-component-typography-body-medium-font-style);\n font-weight: var(--ddk-component-typography-body-medium-font-weight);\n letter-spacing: var(--ddk-component-typography-body-medium-letter-spacing);\n line-height: var(--ddk-component-typography-body-medium-line-height);\n`;\n\nexport const BodyLarge = styled.div`\n color: var(--ddk-component-typography-body-large-color);\n font-family: var(--ddk-component-typography-body-large-font-family);\n font-size: var(--ddk-component-typography-body-large-font-size);\n font-style: var(--ddk-component-typography-body-large-font-style);\n font-weight: var(--ddk-component-typography-body-large-font-weight);\n letter-spacing: var(--ddk-component-typography-body-large-letter-spacing);\n line-height: var(--ddk-component-typography-body-large-line-height);\n`;\n\nexport const BodyMediumInformation = styled(BodyMedium)`\n color: var(--ddk-component-typography-label-information-color);\n`;\n\nexport const BodyLargeInformation = styled(BodyLarge)`\n color: var(--ddk-component-typography-label-information-color);\n font-weight: var(--ddk-component-typography-body-medium-font-weight);\n`;\n\nexport const ErrorText = styled.div`\n color: var(--ddk-component-typography-error-text-color);\n font-family: var(--ddk-component-typography-error-text-font-family);\n font-size: var(--ddk-component-typography-error-text-font-size);\n font-style: var(--ddk-component-typography-error-text-font-style);\n font-weight: var(--ddk-component-typography-error-text-font-weight);\n letter-spacing: var(--ddk-component-typography-error-text-letter-spacing);\n line-height: var(--ddk-component-typography-error-text-line-height);\n`;\n\nexport const HeadingMedium = styled.div`\n color: var(--ddk-component-typography-heading-medium-color);\n font-family: var(--ddk-component-typography-heading-medium-font-family);\n font-size: var(--ddk-component-typography-heading-medium-font-size);\n font-style: var(--ddk-component-typography-heading-medium-font-style);\n font-weight: var(--ddk-component-typography-heading-medium-font-weight);\n letter-spacing: var(--ddk-component-typography-heading-medium-letter-spacing);\n line-height: var(--ddk-component-typography-heading-medium-line-height);\n`;\n\nexport const HeadingLarge = styled.div`\n color: var(--ddk-component-typography-heading-large-color);\n font-family: var(--ddk-component-typography-heading-large-font-family);\n font-size: var(--ddk-component-typography-heading-large-font-size);\n font-style: var(--ddk-component-typography-heading-large-font-style);\n font-weight: var(--ddk-component-typography-heading-large-font-weight);\n letter-spacing: var(--ddk-component-typography-heading-large-letter-spacing);\n line-height: var(--ddk-component-typography-heading-large-line-height);\n`;\n\nexport const HeadingExtraLarge = styled.div`\n color: var(--ddk-component-typography-heading-x-large-color);\n font-family: var(--ddk-component-typography-heading-x-large-font-family);\n font-size: var(--ddk-component-typography-heading-x-large-font-size);\n font-style: var(--ddk-component-typography-heading-x-large-font-style);\n font-weight: var(--ddk-component-typography-heading-x-large-font-weight);\n letter-spacing: var(\n --ddk-component-typography-heading-x-large-letter-spacing\n );\n line-height: var(--ddk-component-typography-heading-x-large-line-height);\n`;\n\nexport const HeadingMediumInformation = styled(HeadingMedium)`\n color: var(--ddk-component-typography-label-information-color);\n`;\n\nexport const HeadingLargeInformation = styled(HeadingLarge)`\n color: var(--ddk-component-typography-label-information-color);\n`;\n\nexport const Label = styled.label`\n color: var(--ddk-component-typography-label-color);\n font-family: var(--ddk-component-typography-label-font-family);\n font-size: var(--ddk-component-typography-label-font-size);\n font-style: var(--ddk-component-typography-label-font-style);\n font-weight: var(--ddk-component-typography-label-font-weight);\n letter-spacing: var(--ddk-component-typography-label-letter-spacing);\n line-height: var(--ddk-component-typography-label-line-height);\n`;\nexport const LabelSmall = styled(Label)`\n font-size: var(--ddk-component-typography-label-font-size-small);\n`;\nexport const LabelExtraSmall = styled(Label)`\n font-size: var(--ddk-component-typography-label-font-size-x-small);\n`;\n\nexport const LabelDate = styled(LabelExtraSmall)`\n color: var(--ddk-component-typography-label-date-color);\n`;\nexport const LabelDateInformation = styled(LabelExtraSmall)`\n color: var(--ddk-component-typography-label-date-information-color);\n`;\n\nexport const LabelInformation = styled(Label)`\n color: var(--ddk-component-typography-label-information-color);\n`;\nexport const LabelInformationSmall = styled(LabelSmall)`\n color: var(--ddk-component-typography-label-information-color);\n`;\nexport const LabelInformationExtraSmall = styled(LabelExtraSmall)`\n color: var(--ddk-component-typography-label-information-color);\n`;\n","import styled from \"@emotion/styled\";\nimport { ErrorText } from \"../typography\";\nimport type React from \"react\";\nimport { forwardRef } from \"react\";\n\nconst Container = styled.div`\n align-items: var(--ddk-component-input-container-align-items);\n display: flex;\n flex-direction: var(--ddk-component-input-container-flex-direction);\n gap: var(--ddk-component-input-container-gap);\n`;\n\nexport interface InputProps {\n active?: boolean;\n disabled?: boolean;\n error?: string;\n isError?: boolean;\n readOnly?: boolean;\n shadow?: boolean;\n state?: string;\n value?: string;\n [key: string]: any;\n}\n\nexport const StyledInput = styled.input<InputProps>`\n align-items: center;\n\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-input-background-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-input-background-color-active)\"\n : props.isError\n ? \"var(--ddk-component-input-background-color-error)\"\n : \"var(--ddk-component-input-background-color-default)\"};\n\n border-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-input-border-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-input-border-color-active)\"\n : props.isError\n ? \"var(--ddk-component-input-border-color-error)\"\n : \"var(--ddk-component-input-border-color-default)\"};\n\n border-style: solid;\n border-width: var(--ddk-component-input-border-width);\n border-radius: var(--ddk-component-input-border-radius);\n\n box-shadow: ${(props) =>\n props.shadow && \"var(--ddk-generic-box-shadow-large)\"};\n\n box-sizing: border-box;\n\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-input-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-input-color-active)\"\n : \"var(--ddk-component-input-color-default)\"};\n\n cursor: ${(props) =>\n props.disabled || props.active ? \"default\" : \"pointer\"};\n\n display: inline-flex;\n font-family: var(--ddk-component-input-font-family);\n font-size: var(--ddk-component-input-font-size);\n gap: var(--ddk-component-input-gap);\n height: var(--ddk-component-input-height);\n justify-content: space-between;\n outline: none;\n padding: var(--ddk-component-input-padding);\n text-align: center;\n transition-duration: var(--ddk-component-input-transition-duration);\n transition-property: var(--ddk-component-input-transition-property);\n transition-timing-function: var(\n --ddk-component-input-transition-timing-function\n );\n user-select: none;\n width: 100%;\n\n &:active {\n background-color: ${(props) =>\n !(props.disabled || props.state) &&\n \"var(--ddk-component-input-background-color-active)\"};\n\n border-color: ${(props) =>\n !(props.disabled || props.state) &&\n \"var(--ddk-component-input-border-color-active)\"};\n\n color: ${(props) =>\n !(props.disabled || props.state) &&\n \"var(--ddk-component-input-color-active)\"};\n }\n\n &:hover {\n background-color: ${(props) =>\n !(props.active || props.disabled || props.state) &&\n \"var(--ddk-component-input-background-color-hover)\"};\n\n border-color: ${(props) =>\n !(props.active || props.disabled || props.state) &&\n \"var(--ddk-component-input-border-color-hover)\"};\n\n color: ${(props) =>\n !(props.active || props.disabled || props.state) &&\n \"var(--ddk-component-input-color-hover)\"};\n }\n`;\n\nexport const Input = forwardRef<HTMLInputElement, InputProps>(\n ({ error, isError, ...props }: InputProps, ref) => (\n <Container>\n {error && <ErrorText>{error}</ErrorText>}\n <StyledInput ref={ref} isError={isError || !!error} {...props} />\n </Container>\n )\n);\n","import isPropValid from \"@emotion/is-prop-valid\";\nimport styled from \"@emotion/styled\";\nimport { Card } from \"../card\";\n\nexport const InstructionCard = styled(Card, {\n shouldForwardProp: (prop) => isPropValid(prop),\n})`\n align-items: flex-start;\n flex-direction: column;\n font-size: var(--ddk-component-instruction-card-font-size);\n gap: var(--ddk-component-instruction-card-gap);\n line-height: 135%;\n padding: var(--ddk-component-instruction-card-padding);\n\n & ol,\n ul {\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-instruction-card-gap);\n list-style-position: inside;\n margin: 0;\n padding: 0;\n }\n\n div {\n white-space: pre-wrap;\n }\n`;\n","import styled from \"@emotion/styled\";\n\nexport const ListContainer = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-list-container-gap);\n`;\n","import isPropValid from \"@emotion/is-prop-valid\";\nimport styled from \"@emotion/styled\";\n\nexport interface NavigationButtonProps {\n active?: boolean;\n}\n\nexport const NavigationButton = styled(\"button\", {\n shouldForwardProp: (prop) => isPropValid(prop),\n})<NavigationButtonProps>`\n align-items: center;\n\n background-color: ${(props) =>\n props.active\n ? \"var(--ddk-component-navigation-button-background-color-active)\"\n : \"var(--ddk-component-navigation-button-background-color-default)\"};\n\n border: none;\n border-radius: var(--ddk-component-navigation-button-border-radius);\n\n color: ${(props) =>\n props.active\n ? \"var(--ddk-component-navigation-button-color-active)\"\n : \"var(--ddk-component-navigation-button-color-default)\"};\n\n cursor: ${(props) =>\n props.disabled || props.active ? \"default\" : \"pointer\"};\n\n display: inline-flex;\n font-family: var(--ddk-component-navigation-button-font-family);\n font-size: var(--ddk-component-navigation-button-font-size);\n font-weight: var(--ddk-component-navigation-button-font-weight);\n line-height: var(--ddk-component-navigation-button-line-height); /* 16.2px */\n letter-spacing: var(\n --ddk-component-navigation-button-letter-spacing\n ); /*1.68px */\n gap: var(--ddk-component-navigation-button-gap);\n padding: var(--ddk-component-navigation-button-padding);\n text-decoration: none;\n transition-duration: var(\n --ddk-component-navigation-button-transition-duration\n );\n transition-property: var(\n --ddk-component-navigation-button-transition-property\n );\n transition-timing-function: var(\n --ddk-component-navigation-button-transition-timing-function\n );\n user-select: none;\n\n &:hover {\n background-color: ${(props) =>\n !props.active &&\n \"var(--ddk-component-navigation-button-background-color-hover)\"};\n\n color: ${(props) =>\n !props.active && \"var(--ddk-component-navigation-button-color-hover)\"};\n }\n\n &:active {\n background-color: var(\n --ddk-component-navigation-button-background-color-active\n );\n color: var(--ddk-component-navigation-button-color-active);\n }\n`;\n","import styled from \"@emotion/styled\";\n\nexport const SidebarNav = styled.div`\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 999;\n display: inline-flex;\n padding: 32px 96px 32px 40px;\n flex-direction: column;\n align-items: flex-start;\n gap: 64px;\n overflow: hidden;\n flex-shrink: 0;\n background: var(--ddk-generic-color-grey-5, #f9f9f9);\n box-shadow: 8px 0px 16px 0px rgba(0, 0, 0, 0.08),\n 0px 0px 4px 0px rgba(0, 0, 0, 0.04);\n`;\n\nexport const SidebarContent = styled.div`\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: var(--ddk-component-sidebar-padding-large);\n`;\n\nexport const SidebarHeader = styled.div`\n display: flex;\n gap: 16px;\n font-size: var(--ddk-component-sidebar-font-size-large);\n font-weight: 600;\n align-items: center;\n`;\n","import styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\n\nexport interface SubNavButtonProps {\n active?: boolean;\n children: ReactNode;\n}\nexport const SubNavButton = styled.button<SubNavButtonProps>`\n font-size: var(--ddk-component-sub-nav-button-font-size);\n font-weight: var(--ddk-generic-font-weight-medium);\n padding: var(--ddk-component-sub-nav-button-padding-small);\n background: ${(props) =>\n props.active ? \"var(--ddk-generic-color-grey-10)\" : \"transparent\"};\n border: none;\n cursor: pointer;\n display: block;\n width: 100%;\n color: ${(props) =>\n props.active\n ? \"var(--ddk-generic-color-grey-100)\"\n : \"var(--ddk-generic-color-grey-60)\"};\n border-radius: 2px;\n text-align: left;\n`;\n","import styled from \"@emotion/styled\";\n\nexport const NoDataSummary = styled.div`\n color: var(--ddk-component-summary-font-disabled-color);\n text-align: center;\n font-size: var(--ddk-component-summary-font-size-small);\n font-weight: var(--ddk-component-summary-font-weight);\n position: absolute;\n left: 50%;\n transform: translate(-50%);\n`;\n\nexport const BodyContent = styled.div`\n position: relative;\n left: 50%;\n transform: translate(-50%, -50%);\n text-align: center;\n`;\n\nexport const ShowMoreText = styled.div`\n font-size: var(--ddk-component-summary-show-more-font-size);\n font-weight: var(--ddk-component-summary-font-weight);\n line-height: 27px;\n color: var(--ddk-component-summary-show-more-color);\n`;\nexport const ShowMoreSubtext = styled.div`\n font-size: var(--ddk-component-summary-text-font-size);\n line-height: 16.2px;\n font-weight: var(--ddk-component-summary-font-weight);\n color: var(--ddk-component-summary-show-more-color);\n`;\n\nexport const SummaryHolderCardText = styled.div`\n font-size: var(--ddk-component-summary-text-font-size);\n line-height: 16.2px;\n font-weight: var(--ddk-component-summary-font-weight);\n color: white;\n`;\n","import styled from \"@emotion/styled\";\n\nexport const TabViewLayout = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-tab-view-layout-gap);\n padding: var(--ddk-component-tab-view-layout-padding);\n`;\n\nexport const TabContainer = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-tab-view-container-gap);\n padding: var(--ddk-component-tab-view-container-padding);\n width: 100%;\n`;\n","import styled from \"@emotion/styled\";\nimport { Button, ButtonProps } from \"../button\";\n\nexport type TapAndHoldButtonState = \"halt\" | \"idle\" | \"run\";\nexport interface TapAndHoldButtonProps extends ButtonProps {\n state?: TapAndHoldButtonState;\n}\n\nexport const TapAndHoldButton = styled(Button)<TapAndHoldButtonProps>`\n align-items: center;\n\n background-color: ${(props) =>\n props.disabled\n ? \"\"\n : props.state === \"run\"\n ? \"var(--ddk-component-button-background-color-run)\"\n : props.state === \"halt\"\n ? \"var(--ddk-component-button-background-color-halt)\"\n : \"\"};\n\n border-color: ${(props) =>\n props.disabled\n ? \"\"\n : props.state === \"run\"\n ? \"var(--ddk-component-button-border-color-run)\"\n : props.state === \"halt\"\n ? \"var(--ddk-component-button-border-color-halt)\"\n : \"\"};\n\n box-shadow: ${(props) =>\n props.state === \"run\"\n ? \"0 0 0 var(--ddk-component-button-border-width-run) var(--ddk-component-button-border-color-run)\"\n : props.state === \"halt\"\n ? \"0 0 0 var(--ddk-component-button-border-width-run) var(--ddk-component-button-border-color-halt)\"\n : \"\"};\n\n color: ${(props) =>\n props.disabled\n ? \"\"\n : props.state === \"run\"\n ? \"var(--ddk-component-button-color-run)\"\n : props.state === \"halt\"\n ? \"var(--ddk-component-button-color-halt)\"\n : \"\"};\n\n justify-content: center;\n margin: var(--ddk-component-tap-and-hold-button-margin);\n min-width: var(--ddk-component-tap-and-hold-button-min-width);\n padding: var(--ddk-component-tap-and-hold-button-padding);\n`;\n","import styled from \"@emotion/styled\";\n\nexport const TextContainer = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-input-card-text-container-gap);\n overflow: hidden;\n`;\n\nexport const Text = styled.div`\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n`;\n\nexport const Description = styled(Text)`\n color: var(--ddk-component-input-card-description-color);\n font-size: var(--ddk-component-input-card-description-font-size);\n font-weight: var(--ddk-component-input-card-description-font-weight);\n text-align: left;\n`;\n\nexport const Error = styled(Description)`\n color: var(--ddk-semantic-color-system-red);\n`;\n","import styled from \"@emotion/styled\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { Button, Card, type CardProps } from \"../../styles\";\n\nconst TextContainer = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-input-card-text-container-gap);\n overflow: hidden;\n`;\n\nconst Text = styled.div`\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n`;\n\ninterface DescriptionProps {\n multiline: boolean;\n}\n\nconst Description = styled(Text)<DescriptionProps>`\n color: var(--ddk-component-input-card-description-color);\n font-size: var(--ddk-component-input-card-description-font-size);\n font-weight: var(--ddk-component-input-card-description-font-weight);\n\n -webkit-box-orient: ${(props) => (props.multiline ? \"vertical\" : undefined)};\n -webkit-line-clamp: ${(props) => (props.multiline ? \"4\" : undefined)};\n display: ${(props) => (props.multiline ? \"-webkit-box\" : undefined)};\n white-space: ${(props) => (props.multiline ? \"normal\" : undefined)};\n`;\n\nexport interface ActionCardProps extends CardProps {\n buttonLabel: string;\n description?: string;\n label: string;\n onAction?: () => void;\n multiline?: boolean;\n}\n\nexport const ActionCard = ({\n buttonLabel,\n description,\n label,\n onAction,\n multiline,\n ...props\n}: ActionCardProps) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <Card collapse={componentModeOverride === \"compact\"} {...props}>\n <TextContainer>\n <Text>{label}</Text>\n {description && (\n <Description multiline={multiline === true}>\n {description}\n </Description>\n )}\n </TextContainer>\n <Button onPointerDown={onAction}>{buttonLabel}</Button>\n </Card>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { ChevronLeftIcon } from \"@kosdev-code/kos-ddk-styles\";\n\nexport const BackButton = styled(ChevronLeftIcon)`\n cursor: pointer;\n`;\n","import styled from \"@emotion/styled\";\nimport { ChevronRightIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport { ReactNode, type ElementType } from \"react\";\nimport { CardButton } from \"../../styles\";\n\nconst CardButtonGridContainer = styled.div`\n display: flex;\n flex-direction: column;\n flex: 1;\n gap: var(--ddk-component-card-button-grid-container-gap);\n`;\n\nexport interface CardItem {\n id: string;\n active?: boolean;\n label?: ReactNode;\n}\n\nexport interface CardButtonGridProps {\n CardButtonRenderer?: ElementType;\n items: CardItem[];\n onSelect?: (id: string) => void;\n showNavIcon?: boolean;\n [key: string]: any;\n}\n\nexport const CardButtonGrid = ({\n CardButtonRenderer = CardButton,\n items,\n onSelect,\n showNavIcon = true,\n ...props\n}: CardButtonGridProps) => (\n <CardButtonGridContainer {...props}>\n {items.map((item) => (\n <CardButtonRenderer\n key={item.id}\n active={item.active}\n onPointerDown={() => onSelect?.(item.id)}\n >\n {item.label}\n {showNavIcon && <ChevronRightIcon />}\n </CardButtonRenderer>\n ))}\n </CardButtonGridContainer>\n);\n","import {\n CloseIcon,\n CloseIconWithBackground,\n} from \"@kosdev-code/kos-ddk-styles\";\nimport { useKosTranslation } from \"@kosdev-code/kos-ui-sdk\";\nimport {\n ActionItemButtonProps,\n IconButton,\n IconButtonSize,\n} from \"../../styles\";\n\ninterface ExtendedActionItemButtonProps extends ActionItemButtonProps {\n fill?: boolean;\n label?: string | boolean;\n size?: IconButtonSize;\n}\n\nconst CloseText = () => {\n const { t } = useKosTranslation(\"common\");\n\n return t(\"close\");\n};\n\nexport const CloseButton = ({\n children,\n fill,\n label,\n size = \"medium\",\n ...props\n}: ExtendedActionItemButtonProps) => (\n <IconButton\n icon={fill ? CloseIconWithBackground : CloseIcon}\n size={size}\n {...props}\n >\n {label ?? <CloseText />}\n </IconButton>\n);\n","import { CompactCloseIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport {\n ActionItemButtonProps,\n IconButton,\n IconButtonSize,\n} from \"../../styles\";\n\ninterface ExtendedActionItemButtonProps extends ActionItemButtonProps {\n label?: string | boolean;\n size?: IconButtonSize;\n}\n\nexport const CompactCloseButton = ({\n children,\n label,\n size = \"medium\",\n ...props\n}: ExtendedActionItemButtonProps) => (\n <IconButton icon={CompactCloseIcon} size={size} {...props} />\n);\n","import styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\nimport { Container, ContainerProps } from \"../../../styles\";\nimport { useComponentConfigurationContext } from \"../../../core\";\n\ninterface ContentStyleProps {\n align?: \"center\" | \"top\";\n contain?: boolean;\n}\n\nconst ContentStyle = styled.div<ContentStyleProps>`\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-modal-content-gap);\n height: 100%;\n\n justify-content: ${(props) =>\n props.align\n ? props.align === \"top\"\n ? \"flex-start\"\n : \"center\"\n : \"var(--ddk-component-modal-content-justify-content)\"};\n\n overflow-x: hidden;\n overflow-y: auto;\n\n padding: ${(props) =>\n props.contain ? \"var(--ddk-component-modal-content-padding)\" : \"initial\"};\n\n width: 100%;\n`;\n\nexport interface ContentProps extends ContainerProps {\n align?: \"center\" | \"top\";\n children?: ReactNode;\n className?: string;\n}\n\nexport const Content = ({ align, children, className, size }: ContentProps) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <Container size={size}>\n <ContentStyle\n align={align}\n className={className}\n contain={componentModeOverride === \"compact\"}\n >\n {children}\n </ContentStyle>\n </Container>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { useComponentConfigurationContext } from \"../../../core\";\n\nconst DefaultFooter = styled.div`\n align-items: var(--ddk-component-modal-footer-align-items);\n box-sizing: border-box;\n display: flex;\n flex-direction: var(--ddk-component-modal-footer-flex-direction);\n flex-wrap: wrap;\n gap: var(--ddk-component-modal-footer-gap);\n justify-content: center;\n padding: var(--ddk-component-modal-footer-padding);\n width: 100%;\n`;\n\nconst CompactFooter = styled(DefaultFooter)`\n background-color: #ffffff;\n border-top: 1px solid #d2d4da;\n`;\n\nexport const Footer = (props) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return componentModeOverride === \"compact\" ? (\n <CompactFooter {...props} />\n ) : (\n <DefaultFooter {...props} />\n );\n};\n","import { useKosTranslation } from \"@kosdev-code/kos-ui-sdk\";\nimport { useComponentConfigurationContext } from \"../../../core\";\nimport { Button } from \"../../../styles\";\nimport { Footer } from \"./footer\";\n\nconst Text = ({ textKey }) => {\n const { t } = useKosTranslation(\"common\");\n\n return t(textKey);\n};\n\ninterface CancelProceedContentProps {\n cancelLabel?: string;\n onCancel?: () => void;\n onProceed?: () => void;\n proceedLabel?: string;\n canProceed?: boolean;\n}\n\nexport const CancelProceedFooter = ({\n cancelLabel,\n onCancel,\n onProceed,\n proceedLabel,\n canProceed = true,\n}: CancelProceedContentProps) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <Footer>\n {componentModeOverride === \"standard\" && (\n <Button onPointerDown={onCancel}>\n {cancelLabel ?? <Text textKey=\"cancel\" />}\n </Button>\n )}\n <Button disabled={!canProceed} mode=\"primary\" onPointerDown={onProceed}>\n {proceedLabel ?? <Text textKey=\"proceed\" />}\n </Button>\n </Footer>\n );\n};\n","import { CompactMenuIcon, MenuIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport {\n ActionItemButtonProps,\n IconButton,\n IconButtonSize,\n} from \"../../styles\";\nimport { useComponentConfigurationContext } from \"../../core\";\n\ninterface ExtendedActionItemButtonProps extends ActionItemButtonProps {\n label?: string;\n size?: IconButtonSize;\n}\n\nexport const MenuButton = ({\n children,\n label = \"Steps\",\n size = \"medium\",\n ...props\n}: ExtendedActionItemButtonProps) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <IconButton\n icon={componentModeOverride === \"compact\" ? CompactMenuIcon : MenuIcon}\n size={size}\n {...props}\n >\n {label}\n </IconButton>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { ReactNode, type ElementType } from \"react\";\nimport { HeadingMedium, LabelInformationSmall } from \"../../../styles\";\nimport { CloseButton as DefaultCloseButton } from \"../../close-button\";\nimport { MenuButton as DefaultOpenButton } from \"../../menu-button\";\n\ninterface HeaderContainerProps {\n contain?: boolean;\n}\n\nconst HeaderContainer = styled.div<HeaderContainerProps>`\n align-items: center;\n background-color: var(--ddk-component-modal-header-background-color);\n box-shadow: var(--ddk-component-modal-header-box-shadow);\n box-sizing: border-box;\n display: flex;\n flex-direction: var(--ddk-component-modal-header-flex-direction);\n gap: var(--ddk-component-modal-header-gap);\n min-height: var(--ddk-component-modal-header-height);\n justify-content: space-between;\n padding: ${(props) =>\n props.contain\n ? \"var(--ddk-component-modal-header-padding-maximized)\"\n : \"var(--ddk-component-modal-header-padding)\"};\n user-select: none;\n`;\n\nconst TitleContainer = styled.div`\n display: flex;\n flex-direction: var(\n --ddk-component-modal-header-title-container-flex-direction\n );\n gap: var(--ddk-component-modal-header-title-container-gap);\n text-align: var(--ddk-component-modal-header-title-container-text-align);\n white-space: var(--ddk-component-modal-header-title-container-white-space);\n`;\n\nconst SideContentContainer = styled.div`\n display: flex;\n flex-direction: column;\n height: 100%;\n justify-content: center;\n padding: var(--ddk-component-modal-header-side-content-padding);\n width: 40px;\n`;\n\nexport interface HeaderProps {\n CloseButton?: ElementType;\n closeButtonLabel?: string;\n contain?: boolean;\n leftContent?: ReactNode;\n onClose?: () => void;\n onOpen?: () => void;\n OpenButton?: ElementType;\n raiseCloseButton?: boolean;\n showCloseButton?: boolean;\n showOpenButton?: boolean;\n\n size?: \"small\" | \"medium\" | \"large\";\n subtitle?: ReactNode;\n title?: ReactNode;\n}\n\nexport const Header = ({\n CloseButton,\n closeButtonLabel,\n contain = false,\n leftContent,\n onClose,\n onOpen,\n OpenButton,\n raiseCloseButton,\n showCloseButton,\n showOpenButton,\n size = \"small\",\n subtitle,\n title,\n}: HeaderProps) => {\n const closeButton = CloseButton ? (\n <CloseButton />\n ) : (\n <DefaultCloseButton\n fill\n label={closeButtonLabel}\n size={size === \"small\" ? \"medium\" : size === \"large\" ? \"large\" : \"medium\"}\n />\n );\n\n const openButton = OpenButton ? (\n <OpenButton onPointerDown={onOpen} />\n ) : (\n <DefaultOpenButton onPointerDown={onOpen} />\n );\n\n return (\n <HeaderContainer contain={contain}>\n <SideContentContainer>\n {showOpenButton ? openButton : leftContent}\n </SideContentContainer>\n <TitleContainer>\n {title && <HeadingMedium>{title}</HeadingMedium>}\n {subtitle && <LabelInformationSmall>{subtitle}</LabelInformationSmall>}\n </TitleContainer>\n <SideContentContainer\n style={{ zIndex: raiseCloseButton ? 1 : \"initial\" }}\n onPointerDown={showCloseButton ? onClose : undefined}\n >\n {showCloseButton ? closeButton : undefined}\n </SideContentContainer>\n </HeaderContainer>\n );\n};\n","// src/index.ts\nvar updateQueue = makeQueue();\nvar raf = (fn) => schedule(fn, updateQueue);\nvar writeQueue = makeQueue();\nraf.write = (fn) => schedule(fn, writeQueue);\nvar onStartQueue = makeQueue();\nraf.onStart = (fn) => schedule(fn, onStartQueue);\nvar onFrameQueue = makeQueue();\nraf.onFrame = (fn) => schedule(fn, onFrameQueue);\nvar onFinishQueue = makeQueue();\nraf.onFinish = (fn) => schedule(fn, onFinishQueue);\nvar timeouts = [];\nraf.setTimeout = (handler, ms) => {\n const time = raf.now() + ms;\n const cancel = () => {\n const i = timeouts.findIndex((t) => t.cancel == cancel);\n if (~i)\n timeouts.splice(i, 1);\n pendingCount -= ~i ? 1 : 0;\n };\n const timeout = { time, handler, cancel };\n timeouts.splice(findTimeout(time), 0, timeout);\n pendingCount += 1;\n start();\n return timeout;\n};\nvar findTimeout = (time) => ~(~timeouts.findIndex((t) => t.time > time) || ~timeouts.length);\nraf.cancel = (fn) => {\n onStartQueue.delete(fn);\n onFrameQueue.delete(fn);\n onFinishQueue.delete(fn);\n updateQueue.delete(fn);\n writeQueue.delete(fn);\n};\nraf.sync = (fn) => {\n sync = true;\n raf.batchedUpdates(fn);\n sync = false;\n};\nraf.throttle = (fn) => {\n let lastArgs;\n function queuedFn() {\n try {\n fn(...lastArgs);\n } finally {\n lastArgs = null;\n }\n }\n function throttled(...args) {\n lastArgs = args;\n raf.onStart(queuedFn);\n }\n throttled.handler = fn;\n throttled.cancel = () => {\n onStartQueue.delete(queuedFn);\n lastArgs = null;\n };\n return throttled;\n};\nvar nativeRaf = typeof window != \"undefined\" ? window.requestAnimationFrame : (\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n () => {\n }\n);\nraf.use = (impl) => nativeRaf = impl;\nraf.now = typeof performance != \"undefined\" ? () => performance.now() : Date.now;\nraf.batchedUpdates = (fn) => fn();\nraf.catch = console.error;\nraf.frameLoop = \"always\";\nraf.advance = () => {\n if (raf.frameLoop !== \"demand\") {\n console.warn(\n \"Cannot call the manual advancement of rafz whilst frameLoop is not set as demand\"\n );\n } else {\n update();\n }\n};\nvar ts = -1;\nvar pendingCount = 0;\nvar sync = false;\nfunction schedule(fn, queue) {\n if (sync) {\n queue.delete(fn);\n fn(0);\n } else {\n queue.add(fn);\n start();\n }\n}\nfunction start() {\n if (ts < 0) {\n ts = 0;\n if (raf.frameLoop !== \"demand\") {\n nativeRaf(loop);\n }\n }\n}\nfunction stop() {\n ts = -1;\n}\nfunction loop() {\n if (~ts) {\n nativeRaf(loop);\n raf.batchedUpdates(update);\n }\n}\nfunction update() {\n const prevTs = ts;\n ts = raf.now();\n const count = findTimeout(ts);\n if (count) {\n eachSafely(timeouts.splice(0, count), (t) => t.handler());\n pendingCount -= count;\n }\n if (!pendingCount) {\n stop();\n return;\n }\n onStartQueue.flush();\n updateQueue.flush(prevTs ? Math.min(64, ts - prevTs) : 16.667);\n onFrameQueue.flush();\n writeQueue.flush();\n onFinishQueue.flush();\n}\nfunction makeQueue() {\n let next = /* @__PURE__ */ new Set();\n let current = next;\n return {\n add(fn) {\n pendingCount += current == next && !next.has(fn) ? 1 : 0;\n next.add(fn);\n },\n delete(fn) {\n pendingCount -= current == next && next.has(fn) ? 1 : 0;\n return next.delete(fn);\n },\n flush(arg) {\n if (current.size) {\n next = /* @__PURE__ */ new Set();\n pendingCount -= current.size;\n eachSafely(current, (fn) => fn(arg) && next.add(fn));\n pendingCount += next.size;\n current = next;\n }\n }\n };\n}\nfunction eachSafely(values, each) {\n values.forEach((value) => {\n try {\n each(value);\n } catch (e) {\n raf.catch(e);\n }\n });\n}\nvar __raf = {\n /** The number of pending tasks */\n count() {\n return pendingCount;\n },\n /** Whether there's a raf update loop running */\n isRunning() {\n return ts >= 0;\n },\n /** Clear internal state. Never call from update loop! */\n clear() {\n ts = -1;\n timeouts = [];\n onStartQueue = makeQueue();\n updateQueue = makeQueue();\n onFrameQueue = makeQueue();\n writeQueue = makeQueue();\n onFinishQueue = makeQueue();\n pendingCount = 0;\n }\n};\nexport {\n __raf,\n raf\n};\n//# sourceMappingURL=react-spring_rafz.modern.mjs.map","var __defProp = Object.defineProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\n\n// src/globals.ts\nvar globals_exports = {};\n__export(globals_exports, {\n assign: () => assign,\n colors: () => colors,\n createStringInterpolator: () => createStringInterpolator,\n skipAnimation: () => skipAnimation,\n to: () => to,\n willAdvance: () => willAdvance\n});\nimport { raf } from \"@react-spring/rafz\";\n\n// src/helpers.ts\nfunction noop() {\n}\nvar defineHidden = (obj, key, value) => Object.defineProperty(obj, key, { value, writable: true, configurable: true });\nvar is = {\n arr: Array.isArray,\n obj: (a) => !!a && a.constructor.name === \"Object\",\n fun: (a) => typeof a === \"function\",\n str: (a) => typeof a === \"string\",\n num: (a) => typeof a === \"number\",\n und: (a) => a === void 0\n};\nfunction isEqual(a, b) {\n if (is.arr(a)) {\n if (!is.arr(b) || a.length !== b.length)\n return false;\n for (let i = 0; i < a.length; i++) {\n if (a[i] !== b[i])\n return false;\n }\n return true;\n }\n return a === b;\n}\nvar each = (obj, fn) => obj.forEach(fn);\nfunction eachProp(obj, fn, ctx) {\n if (is.arr(obj)) {\n for (let i = 0; i < obj.length; i++) {\n fn.call(ctx, obj[i], `${i}`);\n }\n return;\n }\n for (const key in obj) {\n if (obj.hasOwnProperty(key)) {\n fn.call(ctx, obj[key], key);\n }\n }\n}\nvar toArray = (a) => is.und(a) ? [] : is.arr(a) ? a : [a];\nfunction flush(queue, iterator) {\n if (queue.size) {\n const items = Array.from(queue);\n queue.clear();\n each(items, iterator);\n }\n}\nvar flushCalls = (queue, ...args) => flush(queue, (fn) => fn(...args));\nvar isSSR = () => typeof window === \"undefined\" || !window.navigator || /ServerSideRendering|^Deno\\//.test(window.navigator.userAgent);\n\n// src/globals.ts\nvar createStringInterpolator;\nvar to;\nvar colors = null;\nvar skipAnimation = false;\nvar willAdvance = noop;\nvar assign = (globals) => {\n if (globals.to)\n to = globals.to;\n if (globals.now)\n raf.now = globals.now;\n if (globals.colors !== void 0)\n colors = globals.colors;\n if (globals.skipAnimation != null)\n skipAnimation = globals.skipAnimation;\n if (globals.createStringInterpolator)\n createStringInterpolator = globals.createStringInterpolator;\n if (globals.requestAnimationFrame)\n raf.use(globals.requestAnimationFrame);\n if (globals.batchedUpdates)\n raf.batchedUpdates = globals.batchedUpdates;\n if (globals.willAdvance)\n willAdvance = globals.willAdvance;\n if (globals.frameLoop)\n raf.frameLoop = globals.frameLoop;\n};\n\n// src/FrameLoop.ts\nimport { raf as raf2 } from \"@react-spring/rafz\";\nvar startQueue = /* @__PURE__ */ new Set();\nvar currentFrame = [];\nvar prevFrame = [];\nvar priority = 0;\nvar frameLoop = {\n get idle() {\n return !startQueue.size && !currentFrame.length;\n },\n /** Advance the given animation on every frame until idle. */\n start(animation) {\n if (priority > animation.priority) {\n startQueue.add(animation);\n raf2.onStart(flushStartQueue);\n } else {\n startSafely(animation);\n raf2(advance);\n }\n },\n /** Advance all animations by the given time. */\n advance,\n /** Call this when an animation's priority changes. */\n sort(animation) {\n if (priority) {\n raf2.onFrame(() => frameLoop.sort(animation));\n } else {\n const prevIndex = currentFrame.indexOf(animation);\n if (~prevIndex) {\n currentFrame.splice(prevIndex, 1);\n startUnsafely(animation);\n }\n }\n },\n /**\n * Clear all animations. For testing purposes.\n *\n * ☠️ Never call this from within the frameloop.\n */\n clear() {\n currentFrame = [];\n startQueue.clear();\n }\n};\nfunction flushStartQueue() {\n startQueue.forEach(startSafely);\n startQueue.clear();\n raf2(advance);\n}\nfunction startSafely(animation) {\n if (!currentFrame.includes(animation))\n startUnsafely(animation);\n}\nfunction startUnsafely(animation) {\n currentFrame.splice(\n findIndex(currentFrame, (other) => other.priority > animation.priority),\n 0,\n animation\n );\n}\nfunction advance(dt) {\n const nextFrame = prevFrame;\n for (let i = 0; i < currentFrame.length; i++) {\n const animation = currentFrame[i];\n priority = animation.priority;\n if (!animation.idle) {\n willAdvance(animation);\n animation.advance(dt);\n if (!animation.idle) {\n nextFrame.push(animation);\n }\n }\n }\n priority = 0;\n prevFrame = currentFrame;\n prevFrame.length = 0;\n currentFrame = nextFrame;\n return currentFrame.length > 0;\n}\nfunction findIndex(arr, test) {\n const index = arr.findIndex(test);\n return index < 0 ? arr.length : index;\n}\n\n// src/clamp.ts\nvar clamp = (min, max, v) => Math.min(Math.max(v, min), max);\n\n// src/colors.ts\nvar colors2 = {\n transparent: 0,\n aliceblue: 4042850303,\n antiquewhite: 4209760255,\n aqua: 16777215,\n aquamarine: 2147472639,\n azure: 4043309055,\n beige: 4126530815,\n bisque: 4293182719,\n black: 255,\n blanchedalmond: 4293643775,\n blue: 65535,\n blueviolet: 2318131967,\n brown: 2771004159,\n burlywood: 3736635391,\n burntsienna: 3934150143,\n cadetblue: 1604231423,\n chartreuse: 2147418367,\n chocolate: 3530104575,\n coral: 4286533887,\n cornflowerblue: 1687547391,\n cornsilk: 4294499583,\n crimson: 3692313855,\n cyan: 16777215,\n darkblue: 35839,\n darkcyan: 9145343,\n darkgoldenrod: 3095792639,\n darkgray: 2846468607,\n darkgreen: 6553855,\n darkgrey: 2846468607,\n darkkhaki: 3182914559,\n darkmagenta: 2332068863,\n darkolivegreen: 1433087999,\n darkorange: 4287365375,\n darkorchid: 2570243327,\n darkred: 2332033279,\n darksalmon: 3918953215,\n darkseagreen: 2411499519,\n darkslateblue: 1211993087,\n darkslategray: 793726975,\n darkslategrey: 793726975,\n darkturquoise: 13554175,\n darkviolet: 2483082239,\n deeppink: 4279538687,\n deepskyblue: 12582911,\n dimgray: 1768516095,\n dimgrey: 1768516095,\n dodgerblue: 512819199,\n firebrick: 2988581631,\n floralwhite: 4294635775,\n forestgreen: 579543807,\n fuchsia: 4278255615,\n gainsboro: 3705462015,\n ghostwhite: 4177068031,\n gold: 4292280575,\n goldenrod: 3668254975,\n gray: 2155905279,\n green: 8388863,\n greenyellow: 2919182335,\n grey: 2155905279,\n honeydew: 4043305215,\n hotpink: 4285117695,\n indianred: 3445382399,\n indigo: 1258324735,\n ivory: 4294963455,\n khaki: 4041641215,\n lavender: 3873897215,\n lavenderblush: 4293981695,\n lawngreen: 2096890111,\n lemonchiffon: 4294626815,\n lightblue: 2916673279,\n lightcoral: 4034953471,\n lightcyan: 3774873599,\n lightgoldenrodyellow: 4210742015,\n lightgray: 3553874943,\n lightgreen: 2431553791,\n lightgrey: 3553874943,\n lightpink: 4290167295,\n lightsalmon: 4288707327,\n lightseagreen: 548580095,\n lightskyblue: 2278488831,\n lightslategray: 2005441023,\n lightslategrey: 2005441023,\n lightsteelblue: 2965692159,\n lightyellow: 4294959359,\n lime: 16711935,\n limegreen: 852308735,\n linen: 4210091775,\n magenta: 4278255615,\n maroon: 2147483903,\n mediumaquamarine: 1724754687,\n mediumblue: 52735,\n mediumorchid: 3126187007,\n mediumpurple: 2473647103,\n mediumseagreen: 1018393087,\n mediumslateblue: 2070474495,\n mediumspringgreen: 16423679,\n mediumturquoise: 1221709055,\n mediumvioletred: 3340076543,\n midnightblue: 421097727,\n mintcream: 4127193855,\n mistyrose: 4293190143,\n moccasin: 4293178879,\n navajowhite: 4292783615,\n navy: 33023,\n oldlace: 4260751103,\n olive: 2155872511,\n olivedrab: 1804477439,\n orange: 4289003775,\n orangered: 4282712319,\n orchid: 3664828159,\n palegoldenrod: 4008225535,\n palegreen: 2566625535,\n paleturquoise: 2951671551,\n palevioletred: 3681588223,\n papayawhip: 4293907967,\n peachpuff: 4292524543,\n peru: 3448061951,\n pink: 4290825215,\n plum: 3718307327,\n powderblue: 2967529215,\n purple: 2147516671,\n rebeccapurple: 1714657791,\n red: 4278190335,\n rosybrown: 3163525119,\n royalblue: 1097458175,\n saddlebrown: 2336560127,\n salmon: 4202722047,\n sandybrown: 4104413439,\n seagreen: 780883967,\n seashell: 4294307583,\n sienna: 2689740287,\n silver: 3233857791,\n skyblue: 2278484991,\n slateblue: 1784335871,\n slategray: 1887473919,\n slategrey: 1887473919,\n snow: 4294638335,\n springgreen: 16744447,\n steelblue: 1182971135,\n tan: 3535047935,\n teal: 8421631,\n thistle: 3636451583,\n tomato: 4284696575,\n turquoise: 1088475391,\n violet: 4001558271,\n wheat: 4125012991,\n white: 4294967295,\n whitesmoke: 4126537215,\n yellow: 4294902015,\n yellowgreen: 2597139199\n};\n\n// src/colorMatchers.ts\nvar NUMBER = \"[-+]?\\\\d*\\\\.?\\\\d+\";\nvar PERCENTAGE = NUMBER + \"%\";\nfunction call(...parts) {\n return \"\\\\(\\\\s*(\" + parts.join(\")\\\\s*,\\\\s*(\") + \")\\\\s*\\\\)\";\n}\nvar rgb = new RegExp(\"rgb\" + call(NUMBER, NUMBER, NUMBER));\nvar rgba = new RegExp(\"rgba\" + call(NUMBER, NUMBER, NUMBER, NUMBER));\nvar hsl = new RegExp(\"hsl\" + call(NUMBER, PERCENTAGE, PERCENTAGE));\nvar hsla = new RegExp(\n \"hsla\" + call(NUMBER, PERCENTAGE, PERCENTAGE, NUMBER)\n);\nvar hex3 = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/;\nvar hex4 = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/;\nvar hex6 = /^#([0-9a-fA-F]{6})$/;\nvar hex8 = /^#([0-9a-fA-F]{8})$/;\n\n// src/normalizeColor.ts\nfunction normalizeColor(color) {\n let match;\n if (typeof color === \"number\") {\n return color >>> 0 === color && color >= 0 && color <= 4294967295 ? color : null;\n }\n if (match = hex6.exec(color))\n return parseInt(match[1] + \"ff\", 16) >>> 0;\n if (colors && colors[color] !== void 0) {\n return colors[color];\n }\n if (match = rgb.exec(color)) {\n return (parse255(match[1]) << 24 | // r\n parse255(match[2]) << 16 | // g\n parse255(match[3]) << 8 | // b\n 255) >>> // a\n 0;\n }\n if (match = rgba.exec(color)) {\n return (parse255(match[1]) << 24 | // r\n parse255(match[2]) << 16 | // g\n parse255(match[3]) << 8 | // b\n parse1(match[4])) >>> // a\n 0;\n }\n if (match = hex3.exec(color)) {\n return parseInt(\n match[1] + match[1] + // r\n match[2] + match[2] + // g\n match[3] + match[3] + // b\n \"ff\",\n // a\n 16\n ) >>> 0;\n }\n if (match = hex8.exec(color))\n return parseInt(match[1], 16) >>> 0;\n if (match = hex4.exec(color)) {\n return parseInt(\n match[1] + match[1] + // r\n match[2] + match[2] + // g\n match[3] + match[3] + // b\n match[4] + match[4],\n // a\n 16\n ) >>> 0;\n }\n if (match = hsl.exec(color)) {\n return (hslToRgb(\n parse360(match[1]),\n // h\n parsePercentage(match[2]),\n // s\n parsePercentage(match[3])\n // l\n ) | 255) >>> // a\n 0;\n }\n if (match = hsla.exec(color)) {\n return (hslToRgb(\n parse360(match[1]),\n // h\n parsePercentage(match[2]),\n // s\n parsePercentage(match[3])\n // l\n ) | parse1(match[4])) >>> // a\n 0;\n }\n return null;\n}\nfunction hue2rgb(p, q, t) {\n if (t < 0)\n t += 1;\n if (t > 1)\n t -= 1;\n if (t < 1 / 6)\n return p + (q - p) * 6 * t;\n if (t < 1 / 2)\n return q;\n if (t < 2 / 3)\n return p + (q - p) * (2 / 3 - t) * 6;\n return p;\n}\nfunction hslToRgb(h, s, l) {\n const q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n const p = 2 * l - q;\n const r = hue2rgb(p, q, h + 1 / 3);\n const g = hue2rgb(p, q, h);\n const b = hue2rgb(p, q, h - 1 / 3);\n return Math.round(r * 255) << 24 | Math.round(g * 255) << 16 | Math.round(b * 255) << 8;\n}\nfunction parse255(str) {\n const int = parseInt(str, 10);\n if (int < 0)\n return 0;\n if (int > 255)\n return 255;\n return int;\n}\nfunction parse360(str) {\n const int = parseFloat(str);\n return (int % 360 + 360) % 360 / 360;\n}\nfunction parse1(str) {\n const num = parseFloat(str);\n if (num < 0)\n return 0;\n if (num > 1)\n return 255;\n return Math.round(num * 255);\n}\nfunction parsePercentage(str) {\n const int = parseFloat(str);\n if (int < 0)\n return 0;\n if (int > 100)\n return 1;\n return int / 100;\n}\n\n// src/colorToRgba.ts\nfunction colorToRgba(input) {\n let int32Color = normalizeColor(input);\n if (int32Color === null)\n return input;\n int32Color = int32Color || 0;\n const r = (int32Color & 4278190080) >>> 24;\n const g = (int32Color & 16711680) >>> 16;\n const b = (int32Color & 65280) >>> 8;\n const a = (int32Color & 255) / 255;\n return `rgba(${r}, ${g}, ${b}, ${a})`;\n}\n\n// src/createInterpolator.ts\nvar createInterpolator = (range, output, extrapolate) => {\n if (is.fun(range)) {\n return range;\n }\n if (is.arr(range)) {\n return createInterpolator({\n range,\n output,\n extrapolate\n });\n }\n if (is.str(range.output[0])) {\n return createStringInterpolator(range);\n }\n const config = range;\n const outputRange = config.output;\n const inputRange = config.range || [0, 1];\n const extrapolateLeft = config.extrapolateLeft || config.extrapolate || \"extend\";\n const extrapolateRight = config.extrapolateRight || config.extrapolate || \"extend\";\n const easing = config.easing || ((t) => t);\n return (input) => {\n const range2 = findRange(input, inputRange);\n return interpolate(\n input,\n inputRange[range2],\n inputRange[range2 + 1],\n outputRange[range2],\n outputRange[range2 + 1],\n easing,\n extrapolateLeft,\n extrapolateRight,\n config.map\n );\n };\n};\nfunction interpolate(input, inputMin, inputMax, outputMin, outputMax, easing, extrapolateLeft, extrapolateRight, map) {\n let result = map ? map(input) : input;\n if (result < inputMin) {\n if (extrapolateLeft === \"identity\")\n return result;\n else if (extrapolateLeft === \"clamp\")\n result = inputMin;\n }\n if (result > inputMax) {\n if (extrapolateRight === \"identity\")\n return result;\n else if (extrapolateRight === \"clamp\")\n result = inputMax;\n }\n if (outputMin === outputMax)\n return outputMin;\n if (inputMin === inputMax)\n return input <= inputMin ? outputMin : outputMax;\n if (inputMin === -Infinity)\n result = -result;\n else if (inputMax === Infinity)\n result = result - inputMin;\n else\n result = (result - inputMin) / (inputMax - inputMin);\n result = easing(result);\n if (outputMin === -Infinity)\n result = -result;\n else if (outputMax === Infinity)\n result = result + outputMin;\n else\n result = result * (outputMax - outputMin) + outputMin;\n return result;\n}\nfunction findRange(input, inputRange) {\n for (var i = 1; i < inputRange.length - 1; ++i)\n if (inputRange[i] >= input)\n break;\n return i - 1;\n}\n\n// src/easings.ts\nvar steps = (steps2, direction = \"end\") => (progress2) => {\n progress2 = direction === \"end\" ? Math.min(progress2, 0.999) : Math.max(progress2, 1e-3);\n const expanded = progress2 * steps2;\n const rounded = direction === \"end\" ? Math.floor(expanded) : Math.ceil(expanded);\n return clamp(0, 1, rounded / steps2);\n};\nvar c1 = 1.70158;\nvar c2 = c1 * 1.525;\nvar c3 = c1 + 1;\nvar c4 = 2 * Math.PI / 3;\nvar c5 = 2 * Math.PI / 4.5;\nvar bounceOut = (x) => {\n const n1 = 7.5625;\n const d1 = 2.75;\n if (x < 1 / d1) {\n return n1 * x * x;\n } else if (x < 2 / d1) {\n return n1 * (x -= 1.5 / d1) * x + 0.75;\n } else if (x < 2.5 / d1) {\n return n1 * (x -= 2.25 / d1) * x + 0.9375;\n } else {\n return n1 * (x -= 2.625 / d1) * x + 0.984375;\n }\n};\nvar easings = {\n linear: (x) => x,\n easeInQuad: (x) => x * x,\n easeOutQuad: (x) => 1 - (1 - x) * (1 - x),\n easeInOutQuad: (x) => x < 0.5 ? 2 * x * x : 1 - Math.pow(-2 * x + 2, 2) / 2,\n easeInCubic: (x) => x * x * x,\n easeOutCubic: (x) => 1 - Math.pow(1 - x, 3),\n easeInOutCubic: (x) => x < 0.5 ? 4 * x * x * x : 1 - Math.pow(-2 * x + 2, 3) / 2,\n easeInQuart: (x) => x * x * x * x,\n easeOutQuart: (x) => 1 - Math.pow(1 - x, 4),\n easeInOutQuart: (x) => x < 0.5 ? 8 * x * x * x * x : 1 - Math.pow(-2 * x + 2, 4) / 2,\n easeInQuint: (x) => x * x * x * x * x,\n easeOutQuint: (x) => 1 - Math.pow(1 - x, 5),\n easeInOutQuint: (x) => x < 0.5 ? 16 * x * x * x * x * x : 1 - Math.pow(-2 * x + 2, 5) / 2,\n easeInSine: (x) => 1 - Math.cos(x * Math.PI / 2),\n easeOutSine: (x) => Math.sin(x * Math.PI / 2),\n easeInOutSine: (x) => -(Math.cos(Math.PI * x) - 1) / 2,\n easeInExpo: (x) => x === 0 ? 0 : Math.pow(2, 10 * x - 10),\n easeOutExpo: (x) => x === 1 ? 1 : 1 - Math.pow(2, -10 * x),\n easeInOutExpo: (x) => x === 0 ? 0 : x === 1 ? 1 : x < 0.5 ? Math.pow(2, 20 * x - 10) / 2 : (2 - Math.pow(2, -20 * x + 10)) / 2,\n easeInCirc: (x) => 1 - Math.sqrt(1 - Math.pow(x, 2)),\n easeOutCirc: (x) => Math.sqrt(1 - Math.pow(x - 1, 2)),\n easeInOutCirc: (x) => x < 0.5 ? (1 - Math.sqrt(1 - Math.pow(2 * x, 2))) / 2 : (Math.sqrt(1 - Math.pow(-2 * x + 2, 2)) + 1) / 2,\n easeInBack: (x) => c3 * x * x * x - c1 * x * x,\n easeOutBack: (x) => 1 + c3 * Math.pow(x - 1, 3) + c1 * Math.pow(x - 1, 2),\n easeInOutBack: (x) => x < 0.5 ? Math.pow(2 * x, 2) * ((c2 + 1) * 2 * x - c2) / 2 : (Math.pow(2 * x - 2, 2) * ((c2 + 1) * (x * 2 - 2) + c2) + 2) / 2,\n easeInElastic: (x) => x === 0 ? 0 : x === 1 ? 1 : -Math.pow(2, 10 * x - 10) * Math.sin((x * 10 - 10.75) * c4),\n easeOutElastic: (x) => x === 0 ? 0 : x === 1 ? 1 : Math.pow(2, -10 * x) * Math.sin((x * 10 - 0.75) * c4) + 1,\n easeInOutElastic: (x) => x === 0 ? 0 : x === 1 ? 1 : x < 0.5 ? -(Math.pow(2, 20 * x - 10) * Math.sin((20 * x - 11.125) * c5)) / 2 : Math.pow(2, -20 * x + 10) * Math.sin((20 * x - 11.125) * c5) / 2 + 1,\n easeInBounce: (x) => 1 - bounceOut(1 - x),\n easeOutBounce: bounceOut,\n easeInOutBounce: (x) => x < 0.5 ? (1 - bounceOut(1 - 2 * x)) / 2 : (1 + bounceOut(2 * x - 1)) / 2,\n steps\n};\n\n// src/fluids.ts\nvar $get = Symbol.for(\"FluidValue.get\");\nvar $observers = Symbol.for(\"FluidValue.observers\");\nvar hasFluidValue = (arg) => Boolean(arg && arg[$get]);\nvar getFluidValue = (arg) => arg && arg[$get] ? arg[$get]() : arg;\nvar getFluidObservers = (target) => target[$observers] || null;\nfunction callFluidObserver(observer2, event) {\n if (observer2.eventObserved) {\n observer2.eventObserved(event);\n } else {\n observer2(event);\n }\n}\nfunction callFluidObservers(target, event) {\n const observers = target[$observers];\n if (observers) {\n observers.forEach((observer2) => {\n callFluidObserver(observer2, event);\n });\n }\n}\nvar FluidValue = class {\n constructor(get) {\n if (!get && !(get = this.get)) {\n throw Error(\"Unknown getter\");\n }\n setFluidGetter(this, get);\n }\n};\n$get, $observers;\nvar setFluidGetter = (target, get) => setHidden(target, $get, get);\nfunction addFluidObserver(target, observer2) {\n if (target[$get]) {\n let observers = target[$observers];\n if (!observers) {\n setHidden(target, $observers, observers = /* @__PURE__ */ new Set());\n }\n if (!observers.has(observer2)) {\n observers.add(observer2);\n if (target.observerAdded) {\n target.observerAdded(observers.size, observer2);\n }\n }\n }\n return observer2;\n}\nfunction removeFluidObserver(target, observer2) {\n const observers = target[$observers];\n if (observers && observers.has(observer2)) {\n const count = observers.size - 1;\n if (count) {\n observers.delete(observer2);\n } else {\n target[$observers] = null;\n }\n if (target.observerRemoved) {\n target.observerRemoved(count, observer2);\n }\n }\n}\nvar setHidden = (target, key, value) => Object.defineProperty(target, key, {\n value,\n writable: true,\n configurable: true\n});\n\n// src/regexs.ts\nvar numberRegex = /[+\\-]?(?:0|[1-9]\\d*)(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?/g;\nvar colorRegex = /(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\\((-?\\d+%?[,\\s]+){2,3}\\s*[\\d\\.]+%?\\))/gi;\nvar unitRegex = new RegExp(`(${numberRegex.source})(%|[a-z]+)`, \"i\");\nvar rgbaRegex = /rgba\\(([0-9\\.-]+), ([0-9\\.-]+), ([0-9\\.-]+), ([0-9\\.-]+)\\)/gi;\nvar cssVariableRegex = /var\\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\\)/;\n\n// src/variableToRgba.ts\nvar variableToRgba = (input) => {\n const [token, fallback] = parseCSSVariable(input);\n if (!token || isSSR()) {\n return input;\n }\n const value = window.getComputedStyle(document.documentElement).getPropertyValue(token);\n if (value) {\n return value.trim();\n } else if (fallback && fallback.startsWith(\"--\")) {\n const value2 = window.getComputedStyle(document.documentElement).getPropertyValue(fallback);\n if (value2) {\n return value2;\n } else {\n return input;\n }\n } else if (fallback && cssVariableRegex.test(fallback)) {\n return variableToRgba(fallback);\n } else if (fallback) {\n return fallback;\n }\n return input;\n};\nvar parseCSSVariable = (current) => {\n const match = cssVariableRegex.exec(current);\n if (!match)\n return [,];\n const [, token, fallback] = match;\n return [token, fallback];\n};\n\n// src/stringInterpolation.ts\nvar namedColorRegex;\nvar rgbaRound = (_, p1, p2, p3, p4) => `rgba(${Math.round(p1)}, ${Math.round(p2)}, ${Math.round(p3)}, ${p4})`;\nvar createStringInterpolator2 = (config) => {\n if (!namedColorRegex)\n namedColorRegex = colors ? (\n // match color names, ignore partial matches\n new RegExp(`(${Object.keys(colors).join(\"|\")})(?!\\\\w)`, \"g\")\n ) : (\n // never match\n /^\\b$/\n );\n const output = config.output.map((value) => {\n return getFluidValue(value).replace(cssVariableRegex, variableToRgba).replace(colorRegex, colorToRgba).replace(namedColorRegex, colorToRgba);\n });\n const keyframes = output.map((value) => value.match(numberRegex).map(Number));\n const outputRanges = keyframes[0].map(\n (_, i) => keyframes.map((values) => {\n if (!(i in values)) {\n throw Error('The arity of each \"output\" value must be equal');\n }\n return values[i];\n })\n );\n const interpolators = outputRanges.map(\n (output2) => createInterpolator({ ...config, output: output2 })\n );\n return (input) => {\n const missingUnit = !unitRegex.test(output[0]) && output.find((value) => unitRegex.test(value))?.replace(numberRegex, \"\");\n let i = 0;\n return output[0].replace(\n numberRegex,\n () => `${interpolators[i++](input)}${missingUnit || \"\"}`\n ).replace(rgbaRegex, rgbaRound);\n };\n};\n\n// src/deprecations.ts\nvar prefix = \"react-spring: \";\nvar once = (fn) => {\n const func = fn;\n let called = false;\n if (typeof func != \"function\") {\n throw new TypeError(`${prefix}once requires a function parameter`);\n }\n return (...args) => {\n if (!called) {\n func(...args);\n called = true;\n }\n };\n};\nvar warnInterpolate = once(console.warn);\nfunction deprecateInterpolate() {\n warnInterpolate(\n `${prefix}The \"interpolate\" function is deprecated in v9 (use \"to\" instead)`\n );\n}\nvar warnDirectCall = once(console.warn);\nfunction deprecateDirectCall() {\n warnDirectCall(\n `${prefix}Directly calling start instead of using the api object is deprecated in v9 (use \".start\" instead), this will be removed in later 0.X.0 versions`\n );\n}\n\n// src/isAnimatedString.ts\nfunction isAnimatedString(value) {\n return is.str(value) && (value[0] == \"#\" || /\\d/.test(value) || // Do not identify a CSS variable as an AnimatedString if its SSR\n !isSSR() && cssVariableRegex.test(value) || value in (colors || {}));\n}\n\n// src/dom-events/scroll/index.ts\nimport { raf as raf3 } from \"@react-spring/rafz\";\n\n// src/dom-events/resize/resizeElement.ts\nvar observer;\nvar resizeHandlers = /* @__PURE__ */ new WeakMap();\nvar handleObservation = (entries) => entries.forEach(({ target, contentRect }) => {\n return resizeHandlers.get(target)?.forEach((handler) => handler(contentRect));\n});\nfunction resizeElement(handler, target) {\n if (!observer) {\n if (typeof ResizeObserver !== \"undefined\") {\n observer = new ResizeObserver(handleObservation);\n }\n }\n let elementHandlers = resizeHandlers.get(target);\n if (!elementHandlers) {\n elementHandlers = /* @__PURE__ */ new Set();\n resizeHandlers.set(target, elementHandlers);\n }\n elementHandlers.add(handler);\n if (observer) {\n observer.observe(target);\n }\n return () => {\n const elementHandlers2 = resizeHandlers.get(target);\n if (!elementHandlers2)\n return;\n elementHandlers2.delete(handler);\n if (!elementHandlers2.size && observer) {\n observer.unobserve(target);\n }\n };\n}\n\n// src/dom-events/resize/resizeWindow.ts\nvar listeners = /* @__PURE__ */ new Set();\nvar cleanupWindowResizeHandler;\nvar createResizeHandler = () => {\n const handleResize = () => {\n listeners.forEach(\n (callback) => callback({\n width: window.innerWidth,\n height: window.innerHeight\n })\n );\n };\n window.addEventListener(\"resize\", handleResize);\n return () => {\n window.removeEventListener(\"resize\", handleResize);\n };\n};\nvar resizeWindow = (callback) => {\n listeners.add(callback);\n if (!cleanupWindowResizeHandler) {\n cleanupWindowResizeHandler = createResizeHandler();\n }\n return () => {\n listeners.delete(callback);\n if (!listeners.size && cleanupWindowResizeHandler) {\n cleanupWindowResizeHandler();\n cleanupWindowResizeHandler = void 0;\n }\n };\n};\n\n// src/dom-events/resize/index.ts\nvar onResize = (callback, { container = document.documentElement } = {}) => {\n if (container === document.documentElement) {\n return resizeWindow(callback);\n } else {\n return resizeElement(callback, container);\n }\n};\n\n// src/progress.ts\nvar progress = (min, max, value) => max - min === 0 ? 1 : (value - min) / (max - min);\n\n// src/dom-events/scroll/ScrollHandler.ts\nvar SCROLL_KEYS = {\n x: {\n length: \"Width\",\n position: \"Left\"\n },\n y: {\n length: \"Height\",\n position: \"Top\"\n }\n};\nvar ScrollHandler = class {\n constructor(callback, container) {\n this.createAxis = () => ({\n current: 0,\n progress: 0,\n scrollLength: 0\n });\n this.updateAxis = (axisName) => {\n const axis = this.info[axisName];\n const { length, position } = SCROLL_KEYS[axisName];\n axis.current = this.container[`scroll${position}`];\n axis.scrollLength = this.container[`scroll${length}`] - this.container[`client${length}`];\n axis.progress = progress(0, axis.scrollLength, axis.current);\n };\n this.update = () => {\n this.updateAxis(\"x\");\n this.updateAxis(\"y\");\n };\n this.sendEvent = () => {\n this.callback(this.info);\n };\n this.advance = () => {\n this.update();\n this.sendEvent();\n };\n this.callback = callback;\n this.container = container;\n this.info = {\n time: 0,\n x: this.createAxis(),\n y: this.createAxis()\n };\n }\n};\n\n// src/dom-events/scroll/index.ts\nvar scrollListeners = /* @__PURE__ */ new WeakMap();\nvar resizeListeners = /* @__PURE__ */ new WeakMap();\nvar onScrollHandlers = /* @__PURE__ */ new WeakMap();\nvar getTarget = (container) => container === document.documentElement ? window : container;\nvar onScroll = (callback, { container = document.documentElement } = {}) => {\n let containerHandlers = onScrollHandlers.get(container);\n if (!containerHandlers) {\n containerHandlers = /* @__PURE__ */ new Set();\n onScrollHandlers.set(container, containerHandlers);\n }\n const containerHandler = new ScrollHandler(callback, container);\n containerHandlers.add(containerHandler);\n if (!scrollListeners.has(container)) {\n const listener = () => {\n containerHandlers?.forEach((handler) => handler.advance());\n return true;\n };\n scrollListeners.set(container, listener);\n const target = getTarget(container);\n window.addEventListener(\"resize\", listener, { passive: true });\n if (container !== document.documentElement) {\n resizeListeners.set(container, onResize(listener, { container }));\n }\n target.addEventListener(\"scroll\", listener, { passive: true });\n }\n const animateScroll = scrollListeners.get(container);\n raf3(animateScroll);\n return () => {\n raf3.cancel(animateScroll);\n const containerHandlers2 = onScrollHandlers.get(container);\n if (!containerHandlers2)\n return;\n containerHandlers2.delete(containerHandler);\n if (containerHandlers2.size)\n return;\n const listener = scrollListeners.get(container);\n scrollListeners.delete(container);\n if (listener) {\n getTarget(container).removeEventListener(\"scroll\", listener);\n window.removeEventListener(\"resize\", listener);\n resizeListeners.get(container)?.();\n }\n };\n};\n\n// src/hooks/useConstant.ts\nimport { useRef } from \"react\";\nfunction useConstant(init) {\n const ref = useRef(null);\n if (ref.current === null) {\n ref.current = init();\n }\n return ref.current;\n}\n\n// src/hooks/useForceUpdate.ts\nimport { useState } from \"react\";\n\n// src/hooks/useIsMounted.ts\nimport { useRef as useRef2 } from \"react\";\n\n// src/hooks/useIsomorphicLayoutEffect.ts\nimport { useEffect, useLayoutEffect } from \"react\";\nvar useIsomorphicLayoutEffect = isSSR() ? useEffect : useLayoutEffect;\n\n// src/hooks/useIsMounted.ts\nvar useIsMounted = () => {\n const isMounted = useRef2(false);\n useIsomorphicLayoutEffect(() => {\n isMounted.current = true;\n return () => {\n isMounted.current = false;\n };\n }, []);\n return isMounted;\n};\n\n// src/hooks/useForceUpdate.ts\nfunction useForceUpdate() {\n const update = useState()[1];\n const isMounted = useIsMounted();\n return () => {\n if (isMounted.current) {\n update(Math.random());\n }\n };\n}\n\n// src/hooks/useMemoOne.ts\nimport { useEffect as useEffect2, useRef as useRef3, useState as useState2 } from \"react\";\nfunction useMemoOne(getResult, inputs) {\n const [initial] = useState2(\n () => ({\n inputs,\n result: getResult()\n })\n );\n const committed = useRef3();\n const prevCache = committed.current;\n let cache = prevCache;\n if (cache) {\n const useCache = Boolean(\n inputs && cache.inputs && areInputsEqual(inputs, cache.inputs)\n );\n if (!useCache) {\n cache = {\n inputs,\n result: getResult()\n };\n }\n } else {\n cache = initial;\n }\n useEffect2(() => {\n committed.current = cache;\n if (prevCache == initial) {\n initial.inputs = initial.result = void 0;\n }\n }, [cache]);\n return cache.result;\n}\nfunction areInputsEqual(next, prev) {\n if (next.length !== prev.length) {\n return false;\n }\n for (let i = 0; i < next.length; i++) {\n if (next[i] !== prev[i]) {\n return false;\n }\n }\n return true;\n}\n\n// src/hooks/useOnce.ts\nimport { useEffect as useEffect3 } from \"react\";\nvar useOnce = (effect) => useEffect3(effect, emptyDeps);\nvar emptyDeps = [];\n\n// src/hooks/usePrev.ts\nimport { useEffect as useEffect4, useRef as useRef4 } from \"react\";\nfunction usePrev(value) {\n const prevRef = useRef4();\n useEffect4(() => {\n prevRef.current = value;\n });\n return prevRef.current;\n}\n\n// src/hooks/useReducedMotion.ts\nimport { useState as useState3 } from \"react\";\nvar useReducedMotion = () => {\n const [reducedMotion, setReducedMotion] = useState3(null);\n useIsomorphicLayoutEffect(() => {\n const mql = window.matchMedia(\"(prefers-reduced-motion)\");\n const handleMediaChange = (e) => {\n setReducedMotion(e.matches);\n assign({\n skipAnimation: e.matches\n });\n };\n handleMediaChange(mql);\n if (mql.addEventListener) {\n mql.addEventListener(\"change\", handleMediaChange);\n } else {\n mql.addListener(handleMediaChange);\n }\n return () => {\n if (mql.removeEventListener) {\n mql.removeEventListener(\"change\", handleMediaChange);\n } else {\n mql.removeListener(handleMediaChange);\n }\n };\n }, []);\n return reducedMotion;\n};\n\n// src/index.ts\nimport { raf as raf4 } from \"@react-spring/rafz\";\nexport {\n FluidValue,\n globals_exports as Globals,\n addFluidObserver,\n callFluidObserver,\n callFluidObservers,\n clamp,\n colorToRgba,\n colors2 as colors,\n createInterpolator,\n createStringInterpolator2 as createStringInterpolator,\n defineHidden,\n deprecateDirectCall,\n deprecateInterpolate,\n each,\n eachProp,\n easings,\n flush,\n flushCalls,\n frameLoop,\n getFluidObservers,\n getFluidValue,\n hasFluidValue,\n hex3,\n hex4,\n hex6,\n hex8,\n hsl,\n hsla,\n is,\n isAnimatedString,\n isEqual,\n isSSR,\n noop,\n onResize,\n onScroll,\n once,\n prefix,\n raf4 as raf,\n removeFluidObserver,\n rgb,\n rgba,\n setFluidGetter,\n toArray,\n useConstant,\n useForceUpdate,\n useIsomorphicLayoutEffect,\n useMemoOne,\n useOnce,\n usePrev,\n useReducedMotion\n};\n//# sourceMappingURL=react-spring_shared.modern.mjs.map","// src/Animated.ts\nimport { defineHidden } from \"@react-spring/shared\";\nvar $node = Symbol.for(\"Animated:node\");\nvar isAnimated = (value) => !!value && value[$node] === value;\nvar getAnimated = (owner) => owner && owner[$node];\nvar setAnimated = (owner, node) => defineHidden(owner, $node, node);\nvar getPayload = (owner) => owner && owner[$node] && owner[$node].getPayload();\nvar Animated = class {\n constructor() {\n setAnimated(this, this);\n }\n /** Get every `AnimatedValue` used by this node. */\n getPayload() {\n return this.payload || [];\n }\n};\n\n// src/AnimatedValue.ts\nimport { is } from \"@react-spring/shared\";\nvar AnimatedValue = class extends Animated {\n constructor(_value) {\n super();\n this._value = _value;\n this.done = true;\n this.durationProgress = 0;\n if (is.num(this._value)) {\n this.lastPosition = this._value;\n }\n }\n /** @internal */\n static create(value) {\n return new AnimatedValue(value);\n }\n getPayload() {\n return [this];\n }\n getValue() {\n return this._value;\n }\n setValue(value, step) {\n if (is.num(value)) {\n this.lastPosition = value;\n if (step) {\n value = Math.round(value / step) * step;\n if (this.done) {\n this.lastPosition = value;\n }\n }\n }\n if (this._value === value) {\n return false;\n }\n this._value = value;\n return true;\n }\n reset() {\n const { done } = this;\n this.done = false;\n if (is.num(this._value)) {\n this.elapsedTime = 0;\n this.durationProgress = 0;\n this.lastPosition = this._value;\n if (done)\n this.lastVelocity = null;\n this.v0 = null;\n }\n }\n};\n\n// src/AnimatedString.ts\nimport { is as is2, createInterpolator } from \"@react-spring/shared\";\nvar AnimatedString = class extends AnimatedValue {\n constructor(value) {\n super(0);\n this._string = null;\n this._toString = createInterpolator({\n output: [value, value]\n });\n }\n /** @internal */\n static create(value) {\n return new AnimatedString(value);\n }\n getValue() {\n const value = this._string;\n return value == null ? this._string = this._toString(this._value) : value;\n }\n setValue(value) {\n if (is2.str(value)) {\n if (value == this._string) {\n return false;\n }\n this._string = value;\n this._value = 1;\n } else if (super.setValue(value)) {\n this._string = null;\n } else {\n return false;\n }\n return true;\n }\n reset(goal) {\n if (goal) {\n this._toString = createInterpolator({\n output: [this.getValue(), goal]\n });\n }\n this._value = 0;\n super.reset();\n }\n};\n\n// src/AnimatedArray.ts\nimport { isAnimatedString } from \"@react-spring/shared\";\n\n// src/AnimatedObject.ts\nimport {\n each,\n eachProp,\n getFluidValue,\n hasFluidValue\n} from \"@react-spring/shared\";\n\n// src/context.ts\nvar TreeContext = { dependencies: null };\n\n// src/AnimatedObject.ts\nvar AnimatedObject = class extends Animated {\n constructor(source) {\n super();\n this.source = source;\n this.setValue(source);\n }\n getValue(animated) {\n const values = {};\n eachProp(this.source, (source, key) => {\n if (isAnimated(source)) {\n values[key] = source.getValue(animated);\n } else if (hasFluidValue(source)) {\n values[key] = getFluidValue(source);\n } else if (!animated) {\n values[key] = source;\n }\n });\n return values;\n }\n /** Replace the raw object data */\n setValue(source) {\n this.source = source;\n this.payload = this._makePayload(source);\n }\n reset() {\n if (this.payload) {\n each(this.payload, (node) => node.reset());\n }\n }\n /** Create a payload set. */\n _makePayload(source) {\n if (source) {\n const payload = /* @__PURE__ */ new Set();\n eachProp(source, this._addToPayload, payload);\n return Array.from(payload);\n }\n }\n /** Add to a payload set. */\n _addToPayload(source) {\n if (TreeContext.dependencies && hasFluidValue(source)) {\n TreeContext.dependencies.add(source);\n }\n const payload = getPayload(source);\n if (payload) {\n each(payload, (node) => this.add(node));\n }\n }\n};\n\n// src/AnimatedArray.ts\nvar AnimatedArray = class extends AnimatedObject {\n constructor(source) {\n super(source);\n }\n /** @internal */\n static create(source) {\n return new AnimatedArray(source);\n }\n getValue() {\n return this.source.map((node) => node.getValue());\n }\n setValue(source) {\n const payload = this.getPayload();\n if (source.length == payload.length) {\n return payload.map((node, i) => node.setValue(source[i])).some(Boolean);\n }\n super.setValue(source.map(makeAnimated));\n return true;\n }\n};\nfunction makeAnimated(value) {\n const nodeType = isAnimatedString(value) ? AnimatedString : AnimatedValue;\n return nodeType.create(value);\n}\n\n// src/getAnimatedType.ts\nimport { is as is3, isAnimatedString as isAnimatedString2 } from \"@react-spring/shared\";\nfunction getAnimatedType(value) {\n const parentNode = getAnimated(value);\n return parentNode ? parentNode.constructor : is3.arr(value) ? AnimatedArray : isAnimatedString2(value) ? AnimatedString : AnimatedValue;\n}\n\n// src/createHost.ts\nimport { is as is5, eachProp as eachProp2 } from \"@react-spring/shared\";\n\n// src/withAnimated.tsx\nimport * as React from \"react\";\nimport { forwardRef, useRef, useCallback, useEffect } from \"react\";\nimport {\n is as is4,\n each as each2,\n raf,\n useForceUpdate,\n useOnce,\n addFluidObserver,\n removeFluidObserver,\n useIsomorphicLayoutEffect\n} from \"@react-spring/shared\";\nvar withAnimated = (Component, host) => {\n const hasInstance = (\n // Function components must use \"forwardRef\" to avoid being\n // re-rendered on every animation frame.\n !is4.fun(Component) || Component.prototype && Component.prototype.isReactComponent\n );\n return forwardRef((givenProps, givenRef) => {\n const instanceRef = useRef(null);\n const ref = hasInstance && // eslint-disable-next-line react-hooks/rules-of-hooks\n useCallback(\n (value) => {\n instanceRef.current = updateRef(givenRef, value);\n },\n [givenRef]\n );\n const [props, deps] = getAnimatedState(givenProps, host);\n const forceUpdate = useForceUpdate();\n const callback = () => {\n const instance = instanceRef.current;\n if (hasInstance && !instance) {\n return;\n }\n const didUpdate = instance ? host.applyAnimatedValues(instance, props.getValue(true)) : false;\n if (didUpdate === false) {\n forceUpdate();\n }\n };\n const observer = new PropsObserver(callback, deps);\n const observerRef = useRef();\n useIsomorphicLayoutEffect(() => {\n observerRef.current = observer;\n each2(deps, (dep) => addFluidObserver(dep, observer));\n return () => {\n if (observerRef.current) {\n each2(\n observerRef.current.deps,\n (dep) => removeFluidObserver(dep, observerRef.current)\n );\n raf.cancel(observerRef.current.update);\n }\n };\n });\n useEffect(callback, []);\n useOnce(() => () => {\n const observer2 = observerRef.current;\n each2(observer2.deps, (dep) => removeFluidObserver(dep, observer2));\n });\n const usedProps = host.getComponentProps(props.getValue());\n return /* @__PURE__ */ React.createElement(Component, { ...usedProps, ref });\n });\n};\nvar PropsObserver = class {\n constructor(update, deps) {\n this.update = update;\n this.deps = deps;\n }\n eventObserved(event) {\n if (event.type == \"change\") {\n raf.write(this.update);\n }\n }\n};\nfunction getAnimatedState(props, host) {\n const dependencies = /* @__PURE__ */ new Set();\n TreeContext.dependencies = dependencies;\n if (props.style)\n props = {\n ...props,\n style: host.createAnimatedStyle(props.style)\n };\n props = new AnimatedObject(props);\n TreeContext.dependencies = null;\n return [props, dependencies];\n}\nfunction updateRef(ref, value) {\n if (ref) {\n if (is4.fun(ref))\n ref(value);\n else\n ref.current = value;\n }\n return value;\n}\n\n// src/createHost.ts\nvar cacheKey = Symbol.for(\"AnimatedComponent\");\nvar createHost = (components, {\n applyAnimatedValues = () => false,\n createAnimatedStyle = (style) => new AnimatedObject(style),\n getComponentProps = (props) => props\n} = {}) => {\n const hostConfig = {\n applyAnimatedValues,\n createAnimatedStyle,\n getComponentProps\n };\n const animated = (Component) => {\n const displayName = getDisplayName(Component) || \"Anonymous\";\n if (is5.str(Component)) {\n Component = animated[Component] || (animated[Component] = withAnimated(Component, hostConfig));\n } else {\n Component = Component[cacheKey] || (Component[cacheKey] = withAnimated(Component, hostConfig));\n }\n Component.displayName = `Animated(${displayName})`;\n return Component;\n };\n eachProp2(components, (Component, key) => {\n if (is5.arr(components)) {\n key = getDisplayName(Component);\n }\n animated[key] = animated(Component);\n });\n return {\n animated\n };\n};\nvar getDisplayName = (arg) => is5.str(arg) ? arg : arg && is5.str(arg.displayName) ? arg.displayName : is5.fun(arg) && arg.name || null;\nexport {\n Animated,\n AnimatedArray,\n AnimatedObject,\n AnimatedString,\n AnimatedValue,\n createHost,\n getAnimated,\n getAnimatedType,\n getPayload,\n isAnimated,\n setAnimated\n};\n//# sourceMappingURL=react-spring_animated.modern.mjs.map","// src/hooks/useChain.ts\nimport { each, useIsomorphicLayoutEffect } from \"@react-spring/shared\";\n\n// src/helpers.ts\nimport {\n is,\n toArray,\n eachProp,\n getFluidValue,\n isAnimatedString,\n Globals as G\n} from \"@react-spring/shared\";\nfunction callProp(value, ...args) {\n return is.fun(value) ? value(...args) : value;\n}\nvar matchProp = (value, key) => value === true || !!(key && value && (is.fun(value) ? value(key) : toArray(value).includes(key)));\nvar resolveProp = (prop, key) => is.obj(prop) ? key && prop[key] : prop;\nvar getDefaultProp = (props, key) => props.default === true ? props[key] : props.default ? props.default[key] : void 0;\nvar noopTransform = (value) => value;\nvar getDefaultProps = (props, transform = noopTransform) => {\n let keys = DEFAULT_PROPS;\n if (props.default && props.default !== true) {\n props = props.default;\n keys = Object.keys(props);\n }\n const defaults2 = {};\n for (const key of keys) {\n const value = transform(props[key], key);\n if (!is.und(value)) {\n defaults2[key] = value;\n }\n }\n return defaults2;\n};\nvar DEFAULT_PROPS = [\n \"config\",\n \"onProps\",\n \"onStart\",\n \"onChange\",\n \"onPause\",\n \"onResume\",\n \"onRest\"\n];\nvar RESERVED_PROPS = {\n config: 1,\n from: 1,\n to: 1,\n ref: 1,\n loop: 1,\n reset: 1,\n pause: 1,\n cancel: 1,\n reverse: 1,\n immediate: 1,\n default: 1,\n delay: 1,\n onProps: 1,\n onStart: 1,\n onChange: 1,\n onPause: 1,\n onResume: 1,\n onRest: 1,\n onResolve: 1,\n // Transition props\n items: 1,\n trail: 1,\n sort: 1,\n expires: 1,\n initial: 1,\n enter: 1,\n update: 1,\n leave: 1,\n children: 1,\n onDestroyed: 1,\n // Internal props\n keys: 1,\n callId: 1,\n parentId: 1\n};\nfunction getForwardProps(props) {\n const forward = {};\n let count = 0;\n eachProp(props, (value, prop) => {\n if (!RESERVED_PROPS[prop]) {\n forward[prop] = value;\n count++;\n }\n });\n if (count) {\n return forward;\n }\n}\nfunction inferTo(props) {\n const to2 = getForwardProps(props);\n if (to2) {\n const out = { to: to2 };\n eachProp(props, (val, key) => key in to2 || (out[key] = val));\n return out;\n }\n return { ...props };\n}\nfunction computeGoal(value) {\n value = getFluidValue(value);\n return is.arr(value) ? value.map(computeGoal) : isAnimatedString(value) ? G.createStringInterpolator({\n range: [0, 1],\n output: [value, value]\n })(1) : value;\n}\nfunction hasProps(props) {\n for (const _ in props)\n return true;\n return false;\n}\nfunction isAsyncTo(to2) {\n return is.fun(to2) || is.arr(to2) && is.obj(to2[0]);\n}\nfunction detachRefs(ctrl, ref) {\n ctrl.ref?.delete(ctrl);\n ref?.delete(ctrl);\n}\nfunction replaceRef(ctrl, ref) {\n if (ref && ctrl.ref !== ref) {\n ctrl.ref?.delete(ctrl);\n ref.add(ctrl);\n ctrl.ref = ref;\n }\n}\n\n// src/hooks/useChain.ts\nfunction useChain(refs, timeSteps, timeFrame = 1e3) {\n useIsomorphicLayoutEffect(() => {\n if (timeSteps) {\n let prevDelay = 0;\n each(refs, (ref, i) => {\n const controllers = ref.current;\n if (controllers.length) {\n let delay = timeFrame * timeSteps[i];\n if (isNaN(delay))\n delay = prevDelay;\n else\n prevDelay = delay;\n each(controllers, (ctrl) => {\n each(ctrl.queue, (props) => {\n const memoizedDelayProp = props.delay;\n props.delay = (key) => delay + callProp(memoizedDelayProp || 0, key);\n });\n });\n ref.start();\n }\n });\n } else {\n let p = Promise.resolve();\n each(refs, (ref) => {\n const controllers = ref.current;\n if (controllers.length) {\n const queues = controllers.map((ctrl) => {\n const q = ctrl.queue;\n ctrl.queue = [];\n return q;\n });\n p = p.then(() => {\n each(\n controllers,\n (ctrl, i) => each(queues[i] || [], (update2) => ctrl.queue.push(update2))\n );\n return Promise.all(ref.start());\n });\n }\n });\n }\n });\n}\n\n// src/hooks/useSpring.ts\nimport { is as is9 } from \"@react-spring/shared\";\n\n// src/hooks/useSprings.ts\nimport { useContext as useContext2, useMemo, useRef } from \"react\";\nimport {\n is as is8,\n each as each5,\n usePrev,\n useOnce,\n useForceUpdate,\n useIsomorphicLayoutEffect as useIsomorphicLayoutEffect2\n} from \"@react-spring/shared\";\n\n// src/SpringValue.ts\nimport {\n is as is5,\n raf as raf3,\n each as each2,\n isEqual,\n toArray as toArray2,\n eachProp as eachProp3,\n frameLoop as frameLoop2,\n flushCalls,\n getFluidValue as getFluidValue2,\n isAnimatedString as isAnimatedString2,\n Globals as G5,\n callFluidObservers as callFluidObservers2,\n hasFluidValue,\n addFluidObserver,\n removeFluidObserver,\n getFluidObservers\n} from \"@react-spring/shared\";\nimport {\n AnimatedValue,\n AnimatedString,\n getPayload,\n getAnimated as getAnimated2,\n setAnimated,\n getAnimatedType\n} from \"@react-spring/animated\";\n\n// src/AnimationConfig.ts\nimport { is as is2, easings } from \"@react-spring/shared\";\n\n// src/constants.ts\nvar config = {\n default: { tension: 170, friction: 26 },\n gentle: { tension: 120, friction: 14 },\n wobbly: { tension: 180, friction: 12 },\n stiff: { tension: 210, friction: 20 },\n slow: { tension: 280, friction: 60 },\n molasses: { tension: 280, friction: 120 }\n};\n\n// src/AnimationConfig.ts\nvar defaults = {\n ...config.default,\n mass: 1,\n damping: 1,\n easing: easings.linear,\n clamp: false\n};\nvar AnimationConfig = class {\n constructor() {\n /**\n * The initial velocity of one or more values.\n *\n * @default 0\n */\n this.velocity = 0;\n Object.assign(this, defaults);\n }\n};\nfunction mergeConfig(config2, newConfig, defaultConfig) {\n if (defaultConfig) {\n defaultConfig = { ...defaultConfig };\n sanitizeConfig(defaultConfig, newConfig);\n newConfig = { ...defaultConfig, ...newConfig };\n }\n sanitizeConfig(config2, newConfig);\n Object.assign(config2, newConfig);\n for (const key in defaults) {\n if (config2[key] == null) {\n config2[key] = defaults[key];\n }\n }\n let { frequency, damping } = config2;\n const { mass } = config2;\n if (!is2.und(frequency)) {\n if (frequency < 0.01)\n frequency = 0.01;\n if (damping < 0)\n damping = 0;\n config2.tension = Math.pow(2 * Math.PI / frequency, 2) * mass;\n config2.friction = 4 * Math.PI * damping * mass / frequency;\n }\n return config2;\n}\nfunction sanitizeConfig(config2, props) {\n if (!is2.und(props.decay)) {\n config2.duration = void 0;\n } else {\n const isTensionConfig = !is2.und(props.tension) || !is2.und(props.friction);\n if (isTensionConfig || !is2.und(props.frequency) || !is2.und(props.damping) || !is2.und(props.mass)) {\n config2.duration = void 0;\n config2.decay = void 0;\n }\n if (isTensionConfig) {\n config2.frequency = void 0;\n }\n }\n}\n\n// src/Animation.ts\nvar emptyArray = [];\nvar Animation = class {\n constructor() {\n this.changed = false;\n this.values = emptyArray;\n this.toValues = null;\n this.fromValues = emptyArray;\n this.config = new AnimationConfig();\n this.immediate = false;\n }\n};\n\n// src/scheduleProps.ts\nimport { is as is3, raf, Globals as G2 } from \"@react-spring/shared\";\nfunction scheduleProps(callId, { key, props, defaultProps, state, actions }) {\n return new Promise((resolve, reject) => {\n let delay;\n let timeout;\n let cancel = matchProp(props.cancel ?? defaultProps?.cancel, key);\n if (cancel) {\n onStart();\n } else {\n if (!is3.und(props.pause)) {\n state.paused = matchProp(props.pause, key);\n }\n let pause = defaultProps?.pause;\n if (pause !== true) {\n pause = state.paused || matchProp(pause, key);\n }\n delay = callProp(props.delay || 0, key);\n if (pause) {\n state.resumeQueue.add(onResume);\n actions.pause();\n } else {\n actions.resume();\n onResume();\n }\n }\n function onPause() {\n state.resumeQueue.add(onResume);\n state.timeouts.delete(timeout);\n timeout.cancel();\n delay = timeout.time - raf.now();\n }\n function onResume() {\n if (delay > 0 && !G2.skipAnimation) {\n state.delayed = true;\n timeout = raf.setTimeout(onStart, delay);\n state.pauseQueue.add(onPause);\n state.timeouts.add(timeout);\n } else {\n onStart();\n }\n }\n function onStart() {\n if (state.delayed) {\n state.delayed = false;\n }\n state.pauseQueue.delete(onPause);\n state.timeouts.delete(timeout);\n if (callId <= (state.cancelId || 0)) {\n cancel = true;\n }\n try {\n actions.start({ ...props, callId, cancel }, resolve);\n } catch (err) {\n reject(err);\n }\n }\n });\n}\n\n// src/runAsync.ts\nimport {\n is as is4,\n raf as raf2,\n flush,\n eachProp as eachProp2,\n Globals as G3\n} from \"@react-spring/shared\";\n\n// src/AnimationResult.ts\nvar getCombinedResult = (target, results) => results.length == 1 ? results[0] : results.some((result) => result.cancelled) ? getCancelledResult(target.get()) : results.every((result) => result.noop) ? getNoopResult(target.get()) : getFinishedResult(\n target.get(),\n results.every((result) => result.finished)\n);\nvar getNoopResult = (value) => ({\n value,\n noop: true,\n finished: true,\n cancelled: false\n});\nvar getFinishedResult = (value, finished, cancelled = false) => ({\n value,\n finished,\n cancelled\n});\nvar getCancelledResult = (value) => ({\n value,\n cancelled: true,\n finished: false\n});\n\n// src/runAsync.ts\nfunction runAsync(to2, props, state, target) {\n const { callId, parentId, onRest } = props;\n const { asyncTo: prevTo, promise: prevPromise } = state;\n if (!parentId && to2 === prevTo && !props.reset) {\n return prevPromise;\n }\n return state.promise = (async () => {\n state.asyncId = callId;\n state.asyncTo = to2;\n const defaultProps = getDefaultProps(\n props,\n (value, key) => (\n // The `onRest` prop is only called when the `runAsync` promise is resolved.\n key === \"onRest\" ? void 0 : value\n )\n );\n let preventBail;\n let bail;\n const bailPromise = new Promise(\n (resolve, reject) => (preventBail = resolve, bail = reject)\n );\n const bailIfEnded = (bailSignal) => {\n const bailResult = (\n // The `cancel` prop or `stop` method was used.\n callId <= (state.cancelId || 0) && getCancelledResult(target) || // The async `to` prop was replaced.\n callId !== state.asyncId && getFinishedResult(target, false)\n );\n if (bailResult) {\n bailSignal.result = bailResult;\n bail(bailSignal);\n throw bailSignal;\n }\n };\n const animate = (arg1, arg2) => {\n const bailSignal = new BailSignal();\n const skipAnimationSignal = new SkipAnimationSignal();\n return (async () => {\n if (G3.skipAnimation) {\n stopAsync(state);\n skipAnimationSignal.result = getFinishedResult(target, false);\n bail(skipAnimationSignal);\n throw skipAnimationSignal;\n }\n bailIfEnded(bailSignal);\n const props2 = is4.obj(arg1) ? { ...arg1 } : { ...arg2, to: arg1 };\n props2.parentId = callId;\n eachProp2(defaultProps, (value, key) => {\n if (is4.und(props2[key])) {\n props2[key] = value;\n }\n });\n const result2 = await target.start(props2);\n bailIfEnded(bailSignal);\n if (state.paused) {\n await new Promise((resume) => {\n state.resumeQueue.add(resume);\n });\n }\n return result2;\n })();\n };\n let result;\n if (G3.skipAnimation) {\n stopAsync(state);\n return getFinishedResult(target, false);\n }\n try {\n let animating;\n if (is4.arr(to2)) {\n animating = (async (queue) => {\n for (const props2 of queue) {\n await animate(props2);\n }\n })(to2);\n } else {\n animating = Promise.resolve(to2(animate, target.stop.bind(target)));\n }\n await Promise.all([animating.then(preventBail), bailPromise]);\n result = getFinishedResult(target.get(), true, false);\n } catch (err) {\n if (err instanceof BailSignal) {\n result = err.result;\n } else if (err instanceof SkipAnimationSignal) {\n result = err.result;\n } else {\n throw err;\n }\n } finally {\n if (callId == state.asyncId) {\n state.asyncId = parentId;\n state.asyncTo = parentId ? prevTo : void 0;\n state.promise = parentId ? prevPromise : void 0;\n }\n }\n if (is4.fun(onRest)) {\n raf2.batchedUpdates(() => {\n onRest(result, target, target.item);\n });\n }\n return result;\n })();\n}\nfunction stopAsync(state, cancelId) {\n flush(state.timeouts, (t) => t.cancel());\n state.pauseQueue.clear();\n state.resumeQueue.clear();\n state.asyncId = state.asyncTo = state.promise = void 0;\n if (cancelId)\n state.cancelId = cancelId;\n}\nvar BailSignal = class extends Error {\n constructor() {\n super(\n \"An async animation has been interrupted. You see this error because you forgot to use `await` or `.catch(...)` on its returned promise.\"\n );\n }\n};\nvar SkipAnimationSignal = class extends Error {\n constructor() {\n super(\"SkipAnimationSignal\");\n }\n};\n\n// src/FrameValue.ts\nimport {\n deprecateInterpolate,\n frameLoop,\n FluidValue as FluidValue2,\n Globals as G4,\n callFluidObservers\n} from \"@react-spring/shared\";\nimport { getAnimated } from \"@react-spring/animated\";\nvar isFrameValue = (value) => value instanceof FrameValue;\nvar nextId = 1;\nvar FrameValue = class extends FluidValue2 {\n constructor() {\n super(...arguments);\n this.id = nextId++;\n this._priority = 0;\n }\n get priority() {\n return this._priority;\n }\n set priority(priority) {\n if (this._priority != priority) {\n this._priority = priority;\n this._onPriorityChange(priority);\n }\n }\n /** Get the current value */\n get() {\n const node = getAnimated(this);\n return node && node.getValue();\n }\n /** Create a spring that maps our value to another value */\n to(...args) {\n return G4.to(this, args);\n }\n /** @deprecated Use the `to` method instead. */\n interpolate(...args) {\n deprecateInterpolate();\n return G4.to(this, args);\n }\n toJSON() {\n return this.get();\n }\n observerAdded(count) {\n if (count == 1)\n this._attach();\n }\n observerRemoved(count) {\n if (count == 0)\n this._detach();\n }\n /** Called when the first child is added. */\n _attach() {\n }\n /** Called when the last child is removed. */\n _detach() {\n }\n /** Tell our children about our new value */\n _onChange(value, idle = false) {\n callFluidObservers(this, {\n type: \"change\",\n parent: this,\n value,\n idle\n });\n }\n /** Tell our children about our new priority */\n _onPriorityChange(priority) {\n if (!this.idle) {\n frameLoop.sort(this);\n }\n callFluidObservers(this, {\n type: \"priority\",\n parent: this,\n priority\n });\n }\n};\n\n// src/SpringPhase.ts\nvar $P = Symbol.for(\"SpringPhase\");\nvar HAS_ANIMATED = 1;\nvar IS_ANIMATING = 2;\nvar IS_PAUSED = 4;\nvar hasAnimated = (target) => (target[$P] & HAS_ANIMATED) > 0;\nvar isAnimating = (target) => (target[$P] & IS_ANIMATING) > 0;\nvar isPaused = (target) => (target[$P] & IS_PAUSED) > 0;\nvar setActiveBit = (target, active) => active ? target[$P] |= IS_ANIMATING | HAS_ANIMATED : target[$P] &= ~IS_ANIMATING;\nvar setPausedBit = (target, paused) => paused ? target[$P] |= IS_PAUSED : target[$P] &= ~IS_PAUSED;\n\n// src/SpringValue.ts\nvar SpringValue = class extends FrameValue {\n constructor(arg1, arg2) {\n super();\n /** The animation state */\n this.animation = new Animation();\n /** Some props have customizable default values */\n this.defaultProps = {};\n /** The state for `runAsync` calls */\n this._state = {\n paused: false,\n delayed: false,\n pauseQueue: /* @__PURE__ */ new Set(),\n resumeQueue: /* @__PURE__ */ new Set(),\n timeouts: /* @__PURE__ */ new Set()\n };\n /** The promise resolvers of pending `start` calls */\n this._pendingCalls = /* @__PURE__ */ new Set();\n /** The counter for tracking `scheduleProps` calls */\n this._lastCallId = 0;\n /** The last `scheduleProps` call that changed the `to` prop */\n this._lastToId = 0;\n this._memoizedDuration = 0;\n if (!is5.und(arg1) || !is5.und(arg2)) {\n const props = is5.obj(arg1) ? { ...arg1 } : { ...arg2, from: arg1 };\n if (is5.und(props.default)) {\n props.default = true;\n }\n this.start(props);\n }\n }\n /** Equals true when not advancing on each frame. */\n get idle() {\n return !(isAnimating(this) || this._state.asyncTo) || isPaused(this);\n }\n get goal() {\n return getFluidValue2(this.animation.to);\n }\n get velocity() {\n const node = getAnimated2(this);\n return node instanceof AnimatedValue ? node.lastVelocity || 0 : node.getPayload().map((node2) => node2.lastVelocity || 0);\n }\n /**\n * When true, this value has been animated at least once.\n */\n get hasAnimated() {\n return hasAnimated(this);\n }\n /**\n * When true, this value has an unfinished animation,\n * which is either active or paused.\n */\n get isAnimating() {\n return isAnimating(this);\n }\n /**\n * When true, all current and future animations are paused.\n */\n get isPaused() {\n return isPaused(this);\n }\n /**\n *\n *\n */\n get isDelayed() {\n return this._state.delayed;\n }\n /** Advance the current animation by a number of milliseconds */\n advance(dt) {\n let idle = true;\n let changed = false;\n const anim = this.animation;\n let { toValues } = anim;\n const { config: config2 } = anim;\n const payload = getPayload(anim.to);\n if (!payload && hasFluidValue(anim.to)) {\n toValues = toArray2(getFluidValue2(anim.to));\n }\n anim.values.forEach((node2, i) => {\n if (node2.done)\n return;\n const to2 = (\n // Animated strings always go from 0 to 1.\n node2.constructor == AnimatedString ? 1 : payload ? payload[i].lastPosition : toValues[i]\n );\n let finished = anim.immediate;\n let position = to2;\n if (!finished) {\n position = node2.lastPosition;\n if (config2.tension <= 0) {\n node2.done = true;\n return;\n }\n let elapsed = node2.elapsedTime += dt;\n const from = anim.fromValues[i];\n const v0 = node2.v0 != null ? node2.v0 : node2.v0 = is5.arr(config2.velocity) ? config2.velocity[i] : config2.velocity;\n let velocity;\n const precision = config2.precision || (from == to2 ? 5e-3 : Math.min(1, Math.abs(to2 - from) * 1e-3));\n if (!is5.und(config2.duration)) {\n let p = 1;\n if (config2.duration > 0) {\n if (this._memoizedDuration !== config2.duration) {\n this._memoizedDuration = config2.duration;\n if (node2.durationProgress > 0) {\n node2.elapsedTime = config2.duration * node2.durationProgress;\n elapsed = node2.elapsedTime += dt;\n }\n }\n p = (config2.progress || 0) + elapsed / this._memoizedDuration;\n p = p > 1 ? 1 : p < 0 ? 0 : p;\n node2.durationProgress = p;\n }\n position = from + config2.easing(p) * (to2 - from);\n velocity = (position - node2.lastPosition) / dt;\n finished = p == 1;\n } else if (config2.decay) {\n const decay = config2.decay === true ? 0.998 : config2.decay;\n const e = Math.exp(-(1 - decay) * elapsed);\n position = from + v0 / (1 - decay) * (1 - e);\n finished = Math.abs(node2.lastPosition - position) <= precision;\n velocity = v0 * e;\n } else {\n velocity = node2.lastVelocity == null ? v0 : node2.lastVelocity;\n const restVelocity = config2.restVelocity || precision / 10;\n const bounceFactor = config2.clamp ? 0 : config2.bounce;\n const canBounce = !is5.und(bounceFactor);\n const isGrowing = from == to2 ? node2.v0 > 0 : from < to2;\n let isMoving;\n let isBouncing = false;\n const step = 1;\n const numSteps = Math.ceil(dt / step);\n for (let n = 0; n < numSteps; ++n) {\n isMoving = Math.abs(velocity) > restVelocity;\n if (!isMoving) {\n finished = Math.abs(to2 - position) <= precision;\n if (finished) {\n break;\n }\n }\n if (canBounce) {\n isBouncing = position == to2 || position > to2 == isGrowing;\n if (isBouncing) {\n velocity = -velocity * bounceFactor;\n position = to2;\n }\n }\n const springForce = -config2.tension * 1e-6 * (position - to2);\n const dampingForce = -config2.friction * 1e-3 * velocity;\n const acceleration = (springForce + dampingForce) / config2.mass;\n velocity = velocity + acceleration * step;\n position = position + velocity * step;\n }\n }\n node2.lastVelocity = velocity;\n if (Number.isNaN(position)) {\n console.warn(`Got NaN while animating:`, this);\n finished = true;\n }\n }\n if (payload && !payload[i].done) {\n finished = false;\n }\n if (finished) {\n node2.done = true;\n } else {\n idle = false;\n }\n if (node2.setValue(position, config2.round)) {\n changed = true;\n }\n });\n const node = getAnimated2(this);\n const currVal = node.getValue();\n if (idle) {\n const finalVal = getFluidValue2(anim.to);\n if ((currVal !== finalVal || changed) && !config2.decay) {\n node.setValue(finalVal);\n this._onChange(finalVal);\n } else if (changed && config2.decay) {\n this._onChange(currVal);\n }\n this._stop();\n } else if (changed) {\n this._onChange(currVal);\n }\n }\n /** Set the current value, while stopping the current animation */\n set(value) {\n raf3.batchedUpdates(() => {\n this._stop();\n this._focus(value);\n this._set(value);\n });\n return this;\n }\n /**\n * Freeze the active animation in time, as well as any updates merged\n * before `resume` is called.\n */\n pause() {\n this._update({ pause: true });\n }\n /** Resume the animation if paused. */\n resume() {\n this._update({ pause: false });\n }\n /** Skip to the end of the current animation. */\n finish() {\n if (isAnimating(this)) {\n const { to: to2, config: config2 } = this.animation;\n raf3.batchedUpdates(() => {\n this._onStart();\n if (!config2.decay) {\n this._set(to2, false);\n }\n this._stop();\n });\n }\n return this;\n }\n /** Push props into the pending queue. */\n update(props) {\n const queue = this.queue || (this.queue = []);\n queue.push(props);\n return this;\n }\n start(to2, arg2) {\n let queue;\n if (!is5.und(to2)) {\n queue = [is5.obj(to2) ? to2 : { ...arg2, to: to2 }];\n } else {\n queue = this.queue || [];\n this.queue = [];\n }\n return Promise.all(\n queue.map((props) => {\n const up = this._update(props);\n return up;\n })\n ).then((results) => getCombinedResult(this, results));\n }\n /**\n * Stop the current animation, and cancel any delayed updates.\n *\n * Pass `true` to call `onRest` with `cancelled: true`.\n */\n stop(cancel) {\n const { to: to2 } = this.animation;\n this._focus(this.get());\n stopAsync(this._state, cancel && this._lastCallId);\n raf3.batchedUpdates(() => this._stop(to2, cancel));\n return this;\n }\n /** Restart the animation. */\n reset() {\n this._update({ reset: true });\n }\n /** @internal */\n eventObserved(event) {\n if (event.type == \"change\") {\n this._start();\n } else if (event.type == \"priority\") {\n this.priority = event.priority + 1;\n }\n }\n /**\n * Parse the `to` and `from` range from the given `props` object.\n *\n * This also ensures the initial value is available to animated components\n * during the render phase.\n */\n _prepareNode(props) {\n const key = this.key || \"\";\n let { to: to2, from } = props;\n to2 = is5.obj(to2) ? to2[key] : to2;\n if (to2 == null || isAsyncTo(to2)) {\n to2 = void 0;\n }\n from = is5.obj(from) ? from[key] : from;\n if (from == null) {\n from = void 0;\n }\n const range = { to: to2, from };\n if (!hasAnimated(this)) {\n if (props.reverse)\n [to2, from] = [from, to2];\n from = getFluidValue2(from);\n if (!is5.und(from)) {\n this._set(from);\n } else if (!getAnimated2(this)) {\n this._set(to2);\n }\n }\n return range;\n }\n /** Every update is processed by this method before merging. */\n _update({ ...props }, isLoop) {\n const { key, defaultProps } = this;\n if (props.default)\n Object.assign(\n defaultProps,\n getDefaultProps(\n props,\n (value, prop) => /^on/.test(prop) ? resolveProp(value, key) : value\n )\n );\n mergeActiveFn(this, props, \"onProps\");\n sendEvent(this, \"onProps\", props, this);\n const range = this._prepareNode(props);\n if (Object.isFrozen(this)) {\n throw Error(\n \"Cannot animate a `SpringValue` object that is frozen. Did you forget to pass your component to `animated(...)` before animating its props?\"\n );\n }\n const state = this._state;\n return scheduleProps(++this._lastCallId, {\n key,\n props,\n defaultProps,\n state,\n actions: {\n pause: () => {\n if (!isPaused(this)) {\n setPausedBit(this, true);\n flushCalls(state.pauseQueue);\n sendEvent(\n this,\n \"onPause\",\n getFinishedResult(this, checkFinished(this, this.animation.to)),\n this\n );\n }\n },\n resume: () => {\n if (isPaused(this)) {\n setPausedBit(this, false);\n if (isAnimating(this)) {\n this._resume();\n }\n flushCalls(state.resumeQueue);\n sendEvent(\n this,\n \"onResume\",\n getFinishedResult(this, checkFinished(this, this.animation.to)),\n this\n );\n }\n },\n start: this._merge.bind(this, range)\n }\n }).then((result) => {\n if (props.loop && result.finished && !(isLoop && result.noop)) {\n const nextProps = createLoopUpdate(props);\n if (nextProps) {\n return this._update(nextProps, true);\n }\n }\n return result;\n });\n }\n /** Merge props into the current animation */\n _merge(range, props, resolve) {\n if (props.cancel) {\n this.stop(true);\n return resolve(getCancelledResult(this));\n }\n const hasToProp = !is5.und(range.to);\n const hasFromProp = !is5.und(range.from);\n if (hasToProp || hasFromProp) {\n if (props.callId > this._lastToId) {\n this._lastToId = props.callId;\n } else {\n return resolve(getCancelledResult(this));\n }\n }\n const { key, defaultProps, animation: anim } = this;\n const { to: prevTo, from: prevFrom } = anim;\n let { to: to2 = prevTo, from = prevFrom } = range;\n if (hasFromProp && !hasToProp && (!props.default || is5.und(to2))) {\n to2 = from;\n }\n if (props.reverse)\n [to2, from] = [from, to2];\n const hasFromChanged = !isEqual(from, prevFrom);\n if (hasFromChanged) {\n anim.from = from;\n }\n from = getFluidValue2(from);\n const hasToChanged = !isEqual(to2, prevTo);\n if (hasToChanged) {\n this._focus(to2);\n }\n const hasAsyncTo = isAsyncTo(props.to);\n const { config: config2 } = anim;\n const { decay, velocity } = config2;\n if (hasToProp || hasFromProp) {\n config2.velocity = 0;\n }\n if (props.config && !hasAsyncTo) {\n mergeConfig(\n config2,\n callProp(props.config, key),\n // Avoid calling the same \"config\" prop twice.\n props.config !== defaultProps.config ? callProp(defaultProps.config, key) : void 0\n );\n }\n let node = getAnimated2(this);\n if (!node || is5.und(to2)) {\n return resolve(getFinishedResult(this, true));\n }\n const reset = (\n // When `reset` is undefined, the `from` prop implies `reset: true`,\n // except for declarative updates. When `reset` is defined, there\n // must exist a value to animate from.\n is5.und(props.reset) ? hasFromProp && !props.default : !is5.und(from) && matchProp(props.reset, key)\n );\n const value = reset ? from : this.get();\n const goal = computeGoal(to2);\n const isAnimatable = is5.num(goal) || is5.arr(goal) || isAnimatedString2(goal);\n const immediate = !hasAsyncTo && (!isAnimatable || matchProp(defaultProps.immediate || props.immediate, key));\n if (hasToChanged) {\n const nodeType = getAnimatedType(to2);\n if (nodeType !== node.constructor) {\n if (immediate) {\n node = this._set(goal);\n } else\n throw Error(\n `Cannot animate between ${node.constructor.name} and ${nodeType.name}, as the \"to\" prop suggests`\n );\n }\n }\n const goalType = node.constructor;\n let started = hasFluidValue(to2);\n let finished = false;\n if (!started) {\n const hasValueChanged = reset || !hasAnimated(this) && hasFromChanged;\n if (hasToChanged || hasValueChanged) {\n finished = isEqual(computeGoal(value), goal);\n started = !finished;\n }\n if (!isEqual(anim.immediate, immediate) && !immediate || !isEqual(config2.decay, decay) || !isEqual(config2.velocity, velocity)) {\n started = true;\n }\n }\n if (finished && isAnimating(this)) {\n if (anim.changed && !reset) {\n started = true;\n } else if (!started) {\n this._stop(prevTo);\n }\n }\n if (!hasAsyncTo) {\n if (started || hasFluidValue(prevTo)) {\n anim.values = node.getPayload();\n anim.toValues = hasFluidValue(to2) ? null : goalType == AnimatedString ? [1] : toArray2(goal);\n }\n if (anim.immediate != immediate) {\n anim.immediate = immediate;\n if (!immediate && !reset) {\n this._set(prevTo);\n }\n }\n if (started) {\n const { onRest } = anim;\n each2(ACTIVE_EVENTS, (type) => mergeActiveFn(this, props, type));\n const result = getFinishedResult(this, checkFinished(this, prevTo));\n flushCalls(this._pendingCalls, result);\n this._pendingCalls.add(resolve);\n if (anim.changed)\n raf3.batchedUpdates(() => {\n anim.changed = !reset;\n onRest?.(result, this);\n if (reset) {\n callProp(defaultProps.onRest, result);\n } else {\n anim.onStart?.(result, this);\n }\n });\n }\n }\n if (reset) {\n this._set(value);\n }\n if (hasAsyncTo) {\n resolve(runAsync(props.to, props, this._state, this));\n } else if (started) {\n this._start();\n } else if (isAnimating(this) && !hasToChanged) {\n this._pendingCalls.add(resolve);\n } else {\n resolve(getNoopResult(value));\n }\n }\n /** Update the `animation.to` value, which might be a `FluidValue` */\n _focus(value) {\n const anim = this.animation;\n if (value !== anim.to) {\n if (getFluidObservers(this)) {\n this._detach();\n }\n anim.to = value;\n if (getFluidObservers(this)) {\n this._attach();\n }\n }\n }\n _attach() {\n let priority = 0;\n const { to: to2 } = this.animation;\n if (hasFluidValue(to2)) {\n addFluidObserver(to2, this);\n if (isFrameValue(to2)) {\n priority = to2.priority + 1;\n }\n }\n this.priority = priority;\n }\n _detach() {\n const { to: to2 } = this.animation;\n if (hasFluidValue(to2)) {\n removeFluidObserver(to2, this);\n }\n }\n /**\n * Update the current value from outside the frameloop,\n * and return the `Animated` node.\n */\n _set(arg, idle = true) {\n const value = getFluidValue2(arg);\n if (!is5.und(value)) {\n const oldNode = getAnimated2(this);\n if (!oldNode || !isEqual(value, oldNode.getValue())) {\n const nodeType = getAnimatedType(value);\n if (!oldNode || oldNode.constructor != nodeType) {\n setAnimated(this, nodeType.create(value));\n } else {\n oldNode.setValue(value);\n }\n if (oldNode) {\n raf3.batchedUpdates(() => {\n this._onChange(value, idle);\n });\n }\n }\n }\n return getAnimated2(this);\n }\n _onStart() {\n const anim = this.animation;\n if (!anim.changed) {\n anim.changed = true;\n sendEvent(\n this,\n \"onStart\",\n getFinishedResult(this, checkFinished(this, anim.to)),\n this\n );\n }\n }\n _onChange(value, idle) {\n if (!idle) {\n this._onStart();\n callProp(this.animation.onChange, value, this);\n }\n callProp(this.defaultProps.onChange, value, this);\n super._onChange(value, idle);\n }\n // This method resets the animation state (even if already animating) to\n // ensure the latest from/to range is used, and it also ensures this spring\n // is added to the frameloop.\n _start() {\n const anim = this.animation;\n getAnimated2(this).reset(getFluidValue2(anim.to));\n if (!anim.immediate) {\n anim.fromValues = anim.values.map((node) => node.lastPosition);\n }\n if (!isAnimating(this)) {\n setActiveBit(this, true);\n if (!isPaused(this)) {\n this._resume();\n }\n }\n }\n _resume() {\n if (G5.skipAnimation) {\n this.finish();\n } else {\n frameLoop2.start(this);\n }\n }\n /**\n * Exit the frameloop and notify `onRest` listeners.\n *\n * Always wrap `_stop` calls with `batchedUpdates`.\n */\n _stop(goal, cancel) {\n if (isAnimating(this)) {\n setActiveBit(this, false);\n const anim = this.animation;\n each2(anim.values, (node) => {\n node.done = true;\n });\n if (anim.toValues) {\n anim.onChange = anim.onPause = anim.onResume = void 0;\n }\n callFluidObservers2(this, {\n type: \"idle\",\n parent: this\n });\n const result = cancel ? getCancelledResult(this.get()) : getFinishedResult(this.get(), checkFinished(this, goal ?? anim.to));\n flushCalls(this._pendingCalls, result);\n if (anim.changed) {\n anim.changed = false;\n sendEvent(this, \"onRest\", result, this);\n }\n }\n }\n};\nfunction checkFinished(target, to2) {\n const goal = computeGoal(to2);\n const value = computeGoal(target.get());\n return isEqual(value, goal);\n}\nfunction createLoopUpdate(props, loop = props.loop, to2 = props.to) {\n const loopRet = callProp(loop);\n if (loopRet) {\n const overrides = loopRet !== true && inferTo(loopRet);\n const reverse = (overrides || props).reverse;\n const reset = !overrides || overrides.reset;\n return createUpdate({\n ...props,\n loop,\n // Avoid updating default props when looping.\n default: false,\n // Never loop the `pause` prop.\n pause: void 0,\n // For the \"reverse\" prop to loop as expected, the \"to\" prop\n // must be undefined. The \"reverse\" prop is ignored when the\n // \"to\" prop is an array or function.\n to: !reverse || isAsyncTo(to2) ? to2 : void 0,\n // Ignore the \"from\" prop except on reset.\n from: reset ? props.from : void 0,\n reset,\n // The \"loop\" prop can return a \"useSpring\" props object to\n // override any of the original props.\n ...overrides\n });\n }\n}\nfunction createUpdate(props) {\n const { to: to2, from } = props = inferTo(props);\n const keys = /* @__PURE__ */ new Set();\n if (is5.obj(to2))\n findDefined(to2, keys);\n if (is5.obj(from))\n findDefined(from, keys);\n props.keys = keys.size ? Array.from(keys) : null;\n return props;\n}\nfunction declareUpdate(props) {\n const update2 = createUpdate(props);\n if (is5.und(update2.default)) {\n update2.default = getDefaultProps(update2);\n }\n return update2;\n}\nfunction findDefined(values, keys) {\n eachProp3(values, (value, key) => value != null && keys.add(key));\n}\nvar ACTIVE_EVENTS = [\n \"onStart\",\n \"onRest\",\n \"onChange\",\n \"onPause\",\n \"onResume\"\n];\nfunction mergeActiveFn(target, props, type) {\n target.animation[type] = props[type] !== getDefaultProp(props, type) ? resolveProp(props[type], target.key) : void 0;\n}\nfunction sendEvent(target, type, ...args) {\n target.animation[type]?.(...args);\n target.defaultProps[type]?.(...args);\n}\n\n// src/Controller.ts\nimport {\n is as is6,\n raf as raf4,\n each as each3,\n noop,\n flush as flush2,\n toArray as toArray3,\n eachProp as eachProp4,\n flushCalls as flushCalls2,\n addFluidObserver as addFluidObserver2\n} from \"@react-spring/shared\";\nvar BATCHED_EVENTS = [\"onStart\", \"onChange\", \"onRest\"];\nvar nextId2 = 1;\nvar Controller = class {\n constructor(props, flush3) {\n this.id = nextId2++;\n /** The animated values */\n this.springs = {};\n /** The queue of props passed to the `update` method. */\n this.queue = [];\n /** The counter for tracking `scheduleProps` calls */\n this._lastAsyncId = 0;\n /** The values currently being animated */\n this._active = /* @__PURE__ */ new Set();\n /** The values that changed recently */\n this._changed = /* @__PURE__ */ new Set();\n /** Equals false when `onStart` listeners can be called */\n this._started = false;\n /** State used by the `runAsync` function */\n this._state = {\n paused: false,\n pauseQueue: /* @__PURE__ */ new Set(),\n resumeQueue: /* @__PURE__ */ new Set(),\n timeouts: /* @__PURE__ */ new Set()\n };\n /** The event queues that are flushed once per frame maximum */\n this._events = {\n onStart: /* @__PURE__ */ new Map(),\n onChange: /* @__PURE__ */ new Map(),\n onRest: /* @__PURE__ */ new Map()\n };\n this._onFrame = this._onFrame.bind(this);\n if (flush3) {\n this._flush = flush3;\n }\n if (props) {\n this.start({ default: true, ...props });\n }\n }\n /**\n * Equals `true` when no spring values are in the frameloop, and\n * no async animation is currently active.\n */\n get idle() {\n return !this._state.asyncTo && Object.values(this.springs).every((spring) => {\n return spring.idle && !spring.isDelayed && !spring.isPaused;\n });\n }\n get item() {\n return this._item;\n }\n set item(item) {\n this._item = item;\n }\n /** Get the current values of our springs */\n get() {\n const values = {};\n this.each((spring, key) => values[key] = spring.get());\n return values;\n }\n /** Set the current values without animating. */\n set(values) {\n for (const key in values) {\n const value = values[key];\n if (!is6.und(value)) {\n this.springs[key].set(value);\n }\n }\n }\n /** Push an update onto the queue of each value. */\n update(props) {\n if (props) {\n this.queue.push(createUpdate(props));\n }\n return this;\n }\n /**\n * Start the queued animations for every spring, and resolve the returned\n * promise once all queued animations have finished or been cancelled.\n *\n * When you pass a queue (instead of nothing), that queue is used instead of\n * the queued animations added with the `update` method, which are left alone.\n */\n start(props) {\n let { queue } = this;\n if (props) {\n queue = toArray3(props).map(createUpdate);\n } else {\n this.queue = [];\n }\n if (this._flush) {\n return this._flush(this, queue);\n }\n prepareKeys(this, queue);\n return flushUpdateQueue(this, queue);\n }\n /** @internal */\n stop(arg, keys) {\n if (arg !== !!arg) {\n keys = arg;\n }\n if (keys) {\n const springs = this.springs;\n each3(toArray3(keys), (key) => springs[key].stop(!!arg));\n } else {\n stopAsync(this._state, this._lastAsyncId);\n this.each((spring) => spring.stop(!!arg));\n }\n return this;\n }\n /** Freeze the active animation in time */\n pause(keys) {\n if (is6.und(keys)) {\n this.start({ pause: true });\n } else {\n const springs = this.springs;\n each3(toArray3(keys), (key) => springs[key].pause());\n }\n return this;\n }\n /** Resume the animation if paused. */\n resume(keys) {\n if (is6.und(keys)) {\n this.start({ pause: false });\n } else {\n const springs = this.springs;\n each3(toArray3(keys), (key) => springs[key].resume());\n }\n return this;\n }\n /** Call a function once per spring value */\n each(iterator) {\n eachProp4(this.springs, iterator);\n }\n /** @internal Called at the end of every animation frame */\n _onFrame() {\n const { onStart, onChange, onRest } = this._events;\n const active = this._active.size > 0;\n const changed = this._changed.size > 0;\n if (active && !this._started || changed && !this._started) {\n this._started = true;\n flush2(onStart, ([onStart2, result]) => {\n result.value = this.get();\n onStart2(result, this, this._item);\n });\n }\n const idle = !active && this._started;\n const values = changed || idle && onRest.size ? this.get() : null;\n if (changed && onChange.size) {\n flush2(onChange, ([onChange2, result]) => {\n result.value = values;\n onChange2(result, this, this._item);\n });\n }\n if (idle) {\n this._started = false;\n flush2(onRest, ([onRest2, result]) => {\n result.value = values;\n onRest2(result, this, this._item);\n });\n }\n }\n /** @internal */\n eventObserved(event) {\n if (event.type == \"change\") {\n this._changed.add(event.parent);\n if (!event.idle) {\n this._active.add(event.parent);\n }\n } else if (event.type == \"idle\") {\n this._active.delete(event.parent);\n } else\n return;\n raf4.onFrame(this._onFrame);\n }\n};\nfunction flushUpdateQueue(ctrl, queue) {\n return Promise.all(queue.map((props) => flushUpdate(ctrl, props))).then(\n (results) => getCombinedResult(ctrl, results)\n );\n}\nasync function flushUpdate(ctrl, props, isLoop) {\n const { keys, to: to2, from, loop, onRest, onResolve } = props;\n const defaults2 = is6.obj(props.default) && props.default;\n if (loop) {\n props.loop = false;\n }\n if (to2 === false)\n props.to = null;\n if (from === false)\n props.from = null;\n const asyncTo = is6.arr(to2) || is6.fun(to2) ? to2 : void 0;\n if (asyncTo) {\n props.to = void 0;\n props.onRest = void 0;\n if (defaults2) {\n defaults2.onRest = void 0;\n }\n } else {\n each3(BATCHED_EVENTS, (key) => {\n const handler = props[key];\n if (is6.fun(handler)) {\n const queue = ctrl[\"_events\"][key];\n props[key] = ({ finished, cancelled }) => {\n const result2 = queue.get(handler);\n if (result2) {\n if (!finished)\n result2.finished = false;\n if (cancelled)\n result2.cancelled = true;\n } else {\n queue.set(handler, {\n value: null,\n finished: finished || false,\n cancelled: cancelled || false\n });\n }\n };\n if (defaults2) {\n defaults2[key] = props[key];\n }\n }\n });\n }\n const state = ctrl[\"_state\"];\n if (props.pause === !state.paused) {\n state.paused = props.pause;\n flushCalls2(props.pause ? state.pauseQueue : state.resumeQueue);\n } else if (state.paused) {\n props.pause = true;\n }\n const promises = (keys || Object.keys(ctrl.springs)).map(\n (key) => ctrl.springs[key].start(props)\n );\n const cancel = props.cancel === true || getDefaultProp(props, \"cancel\") === true;\n if (asyncTo || cancel && state.asyncId) {\n promises.push(\n scheduleProps(++ctrl[\"_lastAsyncId\"], {\n props,\n state,\n actions: {\n pause: noop,\n resume: noop,\n start(props2, resolve) {\n if (cancel) {\n stopAsync(state, ctrl[\"_lastAsyncId\"]);\n resolve(getCancelledResult(ctrl));\n } else {\n props2.onRest = onRest;\n resolve(\n runAsync(\n asyncTo,\n props2,\n state,\n ctrl\n )\n );\n }\n }\n }\n })\n );\n }\n if (state.paused) {\n await new Promise((resume) => {\n state.resumeQueue.add(resume);\n });\n }\n const result = getCombinedResult(ctrl, await Promise.all(promises));\n if (loop && result.finished && !(isLoop && result.noop)) {\n const nextProps = createLoopUpdate(props, loop, to2);\n if (nextProps) {\n prepareKeys(ctrl, [nextProps]);\n return flushUpdate(ctrl, nextProps, true);\n }\n }\n if (onResolve) {\n raf4.batchedUpdates(() => onResolve(result, ctrl, ctrl.item));\n }\n return result;\n}\nfunction getSprings(ctrl, props) {\n const springs = { ...ctrl.springs };\n if (props) {\n each3(toArray3(props), (props2) => {\n if (is6.und(props2.keys)) {\n props2 = createUpdate(props2);\n }\n if (!is6.obj(props2.to)) {\n props2 = { ...props2, to: void 0 };\n }\n prepareSprings(springs, props2, (key) => {\n return createSpring(key);\n });\n });\n }\n setSprings(ctrl, springs);\n return springs;\n}\nfunction setSprings(ctrl, springs) {\n eachProp4(springs, (spring, key) => {\n if (!ctrl.springs[key]) {\n ctrl.springs[key] = spring;\n addFluidObserver2(spring, ctrl);\n }\n });\n}\nfunction createSpring(key, observer) {\n const spring = new SpringValue();\n spring.key = key;\n if (observer) {\n addFluidObserver2(spring, observer);\n }\n return spring;\n}\nfunction prepareSprings(springs, props, create) {\n if (props.keys) {\n each3(props.keys, (key) => {\n const spring = springs[key] || (springs[key] = create(key));\n spring[\"_prepareNode\"](props);\n });\n }\n}\nfunction prepareKeys(ctrl, queue) {\n each3(queue, (props) => {\n prepareSprings(ctrl.springs, props, (key) => {\n return createSpring(key, ctrl);\n });\n });\n}\n\n// src/SpringContext.tsx\nimport * as React from \"react\";\nimport { useContext } from \"react\";\nimport { useMemoOne } from \"@react-spring/shared\";\nvar SpringContext = ({\n children,\n ...props\n}) => {\n const inherited = useContext(ctx);\n const pause = props.pause || !!inherited.pause, immediate = props.immediate || !!inherited.immediate;\n props = useMemoOne(() => ({ pause, immediate }), [pause, immediate]);\n const { Provider } = ctx;\n return /* @__PURE__ */ React.createElement(Provider, { value: props }, children);\n};\nvar ctx = makeContext(SpringContext, {});\nSpringContext.Provider = ctx.Provider;\nSpringContext.Consumer = ctx.Consumer;\nfunction makeContext(target, init) {\n Object.assign(target, React.createContext(init));\n target.Provider._context = target;\n target.Consumer._context = target;\n return target;\n}\n\n// src/SpringRef.ts\nimport { each as each4, is as is7, deprecateDirectCall } from \"@react-spring/shared\";\nvar SpringRef = () => {\n const current = [];\n const SpringRef2 = function(props) {\n deprecateDirectCall();\n const results = [];\n each4(current, (ctrl, i) => {\n if (is7.und(props)) {\n results.push(ctrl.start());\n } else {\n const update2 = _getProps(props, ctrl, i);\n if (update2) {\n results.push(ctrl.start(update2));\n }\n }\n });\n return results;\n };\n SpringRef2.current = current;\n SpringRef2.add = function(ctrl) {\n if (!current.includes(ctrl)) {\n current.push(ctrl);\n }\n };\n SpringRef2.delete = function(ctrl) {\n const i = current.indexOf(ctrl);\n if (~i)\n current.splice(i, 1);\n };\n SpringRef2.pause = function() {\n each4(current, (ctrl) => ctrl.pause(...arguments));\n return this;\n };\n SpringRef2.resume = function() {\n each4(current, (ctrl) => ctrl.resume(...arguments));\n return this;\n };\n SpringRef2.set = function(values) {\n each4(current, (ctrl, i) => {\n const update2 = is7.fun(values) ? values(i, ctrl) : values;\n if (update2) {\n ctrl.set(update2);\n }\n });\n };\n SpringRef2.start = function(props) {\n const results = [];\n each4(current, (ctrl, i) => {\n if (is7.und(props)) {\n results.push(ctrl.start());\n } else {\n const update2 = this._getProps(props, ctrl, i);\n if (update2) {\n results.push(ctrl.start(update2));\n }\n }\n });\n return results;\n };\n SpringRef2.stop = function() {\n each4(current, (ctrl) => ctrl.stop(...arguments));\n return this;\n };\n SpringRef2.update = function(props) {\n each4(current, (ctrl, i) => ctrl.update(this._getProps(props, ctrl, i)));\n return this;\n };\n const _getProps = function(arg, ctrl, index) {\n return is7.fun(arg) ? arg(index, ctrl) : arg;\n };\n SpringRef2._getProps = _getProps;\n return SpringRef2;\n};\n\n// src/hooks/useSprings.ts\nfunction useSprings(length, props, deps) {\n const propsFn = is8.fun(props) && props;\n if (propsFn && !deps)\n deps = [];\n const ref = useMemo(\n () => propsFn || arguments.length == 3 ? SpringRef() : void 0,\n []\n );\n const layoutId = useRef(0);\n const forceUpdate = useForceUpdate();\n const state = useMemo(\n () => ({\n ctrls: [],\n queue: [],\n flush(ctrl, updates2) {\n const springs2 = getSprings(ctrl, updates2);\n const canFlushSync = layoutId.current > 0 && !state.queue.length && !Object.keys(springs2).some((key) => !ctrl.springs[key]);\n return canFlushSync ? flushUpdateQueue(ctrl, updates2) : new Promise((resolve) => {\n setSprings(ctrl, springs2);\n state.queue.push(() => {\n resolve(flushUpdateQueue(ctrl, updates2));\n });\n forceUpdate();\n });\n }\n }),\n []\n );\n const ctrls = useRef([...state.ctrls]);\n const updates = [];\n const prevLength = usePrev(length) || 0;\n useMemo(() => {\n each5(ctrls.current.slice(length, prevLength), (ctrl) => {\n detachRefs(ctrl, ref);\n ctrl.stop(true);\n });\n ctrls.current.length = length;\n declareUpdates(prevLength, length);\n }, [length]);\n useMemo(() => {\n declareUpdates(0, Math.min(prevLength, length));\n }, deps);\n function declareUpdates(startIndex, endIndex) {\n for (let i = startIndex; i < endIndex; i++) {\n const ctrl = ctrls.current[i] || (ctrls.current[i] = new Controller(null, state.flush));\n const update2 = propsFn ? propsFn(i, ctrl) : props[i];\n if (update2) {\n updates[i] = declareUpdate(update2);\n }\n }\n }\n const springs = ctrls.current.map((ctrl, i) => getSprings(ctrl, updates[i]));\n const context = useContext2(SpringContext);\n const prevContext = usePrev(context);\n const hasContext = context !== prevContext && hasProps(context);\n useIsomorphicLayoutEffect2(() => {\n layoutId.current++;\n state.ctrls = ctrls.current;\n const { queue } = state;\n if (queue.length) {\n state.queue = [];\n each5(queue, (cb) => cb());\n }\n each5(ctrls.current, (ctrl, i) => {\n ref?.add(ctrl);\n if (hasContext) {\n ctrl.start({ default: context });\n }\n const update2 = updates[i];\n if (update2) {\n replaceRef(ctrl, update2.ref);\n if (ctrl.ref) {\n ctrl.queue.push(update2);\n } else {\n ctrl.start(update2);\n }\n }\n });\n });\n useOnce(() => () => {\n each5(state.ctrls, (ctrl) => ctrl.stop(true));\n });\n const values = springs.map((x) => ({ ...x }));\n return ref ? [values, ref] : values;\n}\n\n// src/hooks/useSpring.ts\nfunction useSpring(props, deps) {\n const isFn = is9.fun(props);\n const [[values], ref] = useSprings(\n 1,\n isFn ? props : [props],\n isFn ? deps || [] : deps\n );\n return isFn || arguments.length == 2 ? [values, ref] : values;\n}\n\n// src/hooks/useSpringRef.ts\nimport { useState } from \"react\";\nvar initSpringRef = () => SpringRef();\nvar useSpringRef = () => useState(initSpringRef)[0];\n\n// src/hooks/useSpringValue.ts\nimport { useConstant, useOnce as useOnce2 } from \"@react-spring/shared\";\nvar useSpringValue = (initial, props) => {\n const springValue = useConstant(() => new SpringValue(initial, props));\n useOnce2(() => () => {\n springValue.stop();\n });\n return springValue;\n};\n\n// src/hooks/useTrail.ts\nimport { each as each6, is as is10, useIsomorphicLayoutEffect as useIsomorphicLayoutEffect3 } from \"@react-spring/shared\";\nfunction useTrail(length, propsArg, deps) {\n const propsFn = is10.fun(propsArg) && propsArg;\n if (propsFn && !deps)\n deps = [];\n let reverse = true;\n let passedRef = void 0;\n const result = useSprings(\n length,\n (i, ctrl) => {\n const props = propsFn ? propsFn(i, ctrl) : propsArg;\n passedRef = props.ref;\n reverse = reverse && props.reverse;\n return props;\n },\n // Ensure the props function is called when no deps exist.\n // This works around the 3 argument rule.\n deps || [{}]\n );\n useIsomorphicLayoutEffect3(() => {\n each6(result[1].current, (ctrl, i) => {\n const parent = result[1].current[i + (reverse ? 1 : -1)];\n replaceRef(ctrl, passedRef);\n if (ctrl.ref) {\n if (parent) {\n ctrl.update({ to: parent.springs });\n }\n return;\n }\n if (parent) {\n ctrl.start({ to: parent.springs });\n } else {\n ctrl.start();\n }\n });\n }, deps);\n if (propsFn || arguments.length == 3) {\n const ref = passedRef ?? result[1];\n ref[\"_getProps\"] = (propsArg2, ctrl, i) => {\n const props = is10.fun(propsArg2) ? propsArg2(i, ctrl) : propsArg2;\n if (props) {\n const parent = ref.current[i + (props.reverse ? 1 : -1)];\n if (parent)\n props.to = parent.springs;\n return props;\n }\n };\n return result;\n }\n return result[0];\n}\n\n// src/hooks/useTransition.tsx\nimport * as React2 from \"react\";\nimport { useContext as useContext3, useRef as useRef2, useMemo as useMemo2 } from \"react\";\nimport {\n is as is11,\n toArray as toArray4,\n useForceUpdate as useForceUpdate2,\n useOnce as useOnce3,\n usePrev as usePrev2,\n each as each7,\n useIsomorphicLayoutEffect as useIsomorphicLayoutEffect4\n} from \"@react-spring/shared\";\nfunction useTransition(data, props, deps) {\n const propsFn = is11.fun(props) && props;\n const {\n reset,\n sort,\n trail = 0,\n expires = true,\n exitBeforeEnter = false,\n onDestroyed,\n ref: propsRef,\n config: propsConfig\n } = propsFn ? propsFn() : props;\n const ref = useMemo2(\n () => propsFn || arguments.length == 3 ? SpringRef() : void 0,\n []\n );\n const items = toArray4(data);\n const transitions = [];\n const usedTransitions = useRef2(null);\n const prevTransitions = reset ? null : usedTransitions.current;\n useIsomorphicLayoutEffect4(() => {\n usedTransitions.current = transitions;\n });\n useOnce3(() => {\n each7(transitions, (t) => {\n ref?.add(t.ctrl);\n t.ctrl.ref = ref;\n });\n return () => {\n each7(usedTransitions.current, (t) => {\n if (t.expired) {\n clearTimeout(t.expirationId);\n }\n detachRefs(t.ctrl, ref);\n t.ctrl.stop(true);\n });\n };\n });\n const keys = getKeys(items, propsFn ? propsFn() : props, prevTransitions);\n const expired = reset && usedTransitions.current || [];\n useIsomorphicLayoutEffect4(\n () => each7(expired, ({ ctrl, item, key }) => {\n detachRefs(ctrl, ref);\n callProp(onDestroyed, item, key);\n })\n );\n const reused = [];\n if (prevTransitions)\n each7(prevTransitions, (t, i) => {\n if (t.expired) {\n clearTimeout(t.expirationId);\n expired.push(t);\n } else {\n i = reused[i] = keys.indexOf(t.key);\n if (~i)\n transitions[i] = t;\n }\n });\n each7(items, (item, i) => {\n if (!transitions[i]) {\n transitions[i] = {\n key: keys[i],\n item,\n phase: \"mount\" /* MOUNT */,\n ctrl: new Controller()\n };\n transitions[i].ctrl.item = item;\n }\n });\n if (reused.length) {\n let i = -1;\n const { leave } = propsFn ? propsFn() : props;\n each7(reused, (keyIndex, prevIndex) => {\n const t = prevTransitions[prevIndex];\n if (~keyIndex) {\n i = transitions.indexOf(t);\n transitions[i] = { ...t, item: items[keyIndex] };\n } else if (leave) {\n transitions.splice(++i, 0, t);\n }\n });\n }\n if (is11.fun(sort)) {\n transitions.sort((a, b) => sort(a.item, b.item));\n }\n let delay = -trail;\n const forceUpdate = useForceUpdate2();\n const defaultProps = getDefaultProps(props);\n const changes = /* @__PURE__ */ new Map();\n const exitingTransitions = useRef2(/* @__PURE__ */ new Map());\n const forceChange = useRef2(false);\n each7(transitions, (t, i) => {\n const key = t.key;\n const prevPhase = t.phase;\n const p = propsFn ? propsFn() : props;\n let to2;\n let phase;\n const propsDelay = callProp(p.delay || 0, key);\n if (prevPhase == \"mount\" /* MOUNT */) {\n to2 = p.enter;\n phase = \"enter\" /* ENTER */;\n } else {\n const isLeave = keys.indexOf(key) < 0;\n if (prevPhase != \"leave\" /* LEAVE */) {\n if (isLeave) {\n to2 = p.leave;\n phase = \"leave\" /* LEAVE */;\n } else if (to2 = p.update) {\n phase = \"update\" /* UPDATE */;\n } else\n return;\n } else if (!isLeave) {\n to2 = p.enter;\n phase = \"enter\" /* ENTER */;\n } else\n return;\n }\n to2 = callProp(to2, t.item, i);\n to2 = is11.obj(to2) ? inferTo(to2) : { to: to2 };\n if (!to2.config) {\n const config2 = propsConfig || defaultProps.config;\n to2.config = callProp(config2, t.item, i, phase);\n }\n delay += trail;\n const payload = {\n ...defaultProps,\n // we need to add our props.delay value you here.\n delay: propsDelay + delay,\n ref: propsRef,\n immediate: p.immediate,\n // This prevents implied resets.\n reset: false,\n // Merge any phase-specific props.\n ...to2\n };\n if (phase == \"enter\" /* ENTER */ && is11.und(payload.from)) {\n const p2 = propsFn ? propsFn() : props;\n const from = is11.und(p2.initial) || prevTransitions ? p2.from : p2.initial;\n payload.from = callProp(from, t.item, i);\n }\n const { onResolve } = payload;\n payload.onResolve = (result) => {\n callProp(onResolve, result);\n const transitions2 = usedTransitions.current;\n const t2 = transitions2.find((t3) => t3.key === key);\n if (!t2)\n return;\n if (result.cancelled && t2.phase != \"update\" /* UPDATE */) {\n return;\n }\n if (t2.ctrl.idle) {\n const idle = transitions2.every((t3) => t3.ctrl.idle);\n if (t2.phase == \"leave\" /* LEAVE */) {\n const expiry = callProp(expires, t2.item);\n if (expiry !== false) {\n const expiryMs = expiry === true ? 0 : expiry;\n t2.expired = true;\n if (!idle && expiryMs > 0) {\n if (expiryMs <= 2147483647)\n t2.expirationId = setTimeout(forceUpdate, expiryMs);\n return;\n }\n }\n }\n if (idle && transitions2.some((t3) => t3.expired)) {\n exitingTransitions.current.delete(t2);\n if (exitBeforeEnter) {\n forceChange.current = true;\n }\n forceUpdate();\n }\n }\n };\n const springs = getSprings(t.ctrl, payload);\n if (phase === \"leave\" /* LEAVE */ && exitBeforeEnter) {\n exitingTransitions.current.set(t, { phase, springs, payload });\n } else {\n changes.set(t, { phase, springs, payload });\n }\n });\n const context = useContext3(SpringContext);\n const prevContext = usePrev2(context);\n const hasContext = context !== prevContext && hasProps(context);\n useIsomorphicLayoutEffect4(() => {\n if (hasContext) {\n each7(transitions, (t) => {\n t.ctrl.start({ default: context });\n });\n }\n }, [context]);\n each7(changes, (_, t) => {\n if (exitingTransitions.current.size) {\n const ind = transitions.findIndex((state) => state.key === t.key);\n transitions.splice(ind, 1);\n }\n });\n useIsomorphicLayoutEffect4(\n () => {\n each7(\n exitingTransitions.current.size ? exitingTransitions.current : changes,\n ({ phase, payload }, t) => {\n const { ctrl } = t;\n t.phase = phase;\n ref?.add(ctrl);\n if (hasContext && phase == \"enter\" /* ENTER */) {\n ctrl.start({ default: context });\n }\n if (payload) {\n replaceRef(ctrl, payload.ref);\n if ((ctrl.ref || ref) && !forceChange.current) {\n ctrl.update(payload);\n } else {\n ctrl.start(payload);\n if (forceChange.current) {\n forceChange.current = false;\n }\n }\n }\n }\n );\n },\n reset ? void 0 : deps\n );\n const renderTransitions = (render) => /* @__PURE__ */ React2.createElement(React2.Fragment, null, transitions.map((t, i) => {\n const { springs } = changes.get(t) || t.ctrl;\n const elem = render({ ...springs }, t.item, t, i);\n return elem && elem.type ? /* @__PURE__ */ React2.createElement(\n elem.type,\n {\n ...elem.props,\n key: is11.str(t.key) || is11.num(t.key) ? t.key : t.ctrl.id,\n ref: elem.ref\n }\n ) : elem;\n }));\n return ref ? [renderTransitions, ref] : renderTransitions;\n}\nvar nextKey = 1;\nfunction getKeys(items, { key, keys = key }, prevTransitions) {\n if (keys === null) {\n const reused = /* @__PURE__ */ new Set();\n return items.map((item) => {\n const t = prevTransitions && prevTransitions.find(\n (t2) => t2.item === item && t2.phase !== \"leave\" /* LEAVE */ && !reused.has(t2)\n );\n if (t) {\n reused.add(t);\n return t.key;\n }\n return nextKey++;\n });\n }\n return is11.und(keys) ? items : is11.fun(keys) ? items.map(keys) : toArray4(keys);\n}\n\n// src/hooks/useScroll.ts\nimport { each as each8, onScroll, useIsomorphicLayoutEffect as useIsomorphicLayoutEffect5 } from \"@react-spring/shared\";\nvar useScroll = ({\n container,\n ...springOptions\n} = {}) => {\n const [scrollValues, api] = useSpring(\n () => ({\n scrollX: 0,\n scrollY: 0,\n scrollXProgress: 0,\n scrollYProgress: 0,\n ...springOptions\n }),\n []\n );\n useIsomorphicLayoutEffect5(() => {\n const cleanupScroll = onScroll(\n ({ x, y }) => {\n api.start({\n scrollX: x.current,\n scrollXProgress: x.progress,\n scrollY: y.current,\n scrollYProgress: y.progress\n });\n },\n { container: container?.current || void 0 }\n );\n return () => {\n each8(Object.values(scrollValues), (value) => value.stop());\n cleanupScroll();\n };\n }, []);\n return scrollValues;\n};\n\n// src/hooks/useResize.ts\nimport { onResize, each as each9, useIsomorphicLayoutEffect as useIsomorphicLayoutEffect6 } from \"@react-spring/shared\";\nvar useResize = ({\n container,\n ...springOptions\n}) => {\n const [sizeValues, api] = useSpring(\n () => ({\n width: 0,\n height: 0,\n ...springOptions\n }),\n []\n );\n useIsomorphicLayoutEffect6(() => {\n const cleanupScroll = onResize(\n ({ width, height }) => {\n api.start({\n width,\n height,\n immediate: sizeValues.width.get() === 0 || sizeValues.height.get() === 0\n });\n },\n { container: container?.current || void 0 }\n );\n return () => {\n each9(Object.values(sizeValues), (value) => value.stop());\n cleanupScroll();\n };\n }, []);\n return sizeValues;\n};\n\n// src/hooks/useInView.ts\nimport { useRef as useRef3, useState as useState2 } from \"react\";\nimport { is as is12, useIsomorphicLayoutEffect as useIsomorphicLayoutEffect7 } from \"@react-spring/shared\";\nvar defaultThresholdOptions = {\n any: 0,\n all: 1\n};\nfunction useInView(props, args) {\n const [isInView, setIsInView] = useState2(false);\n const ref = useRef3();\n const propsFn = is12.fun(props) && props;\n const springsProps = propsFn ? propsFn() : {};\n const { to: to2 = {}, from = {}, ...restSpringProps } = springsProps;\n const intersectionArguments = propsFn ? args : props;\n const [springs, api] = useSpring(() => ({ from, ...restSpringProps }), []);\n useIsomorphicLayoutEffect7(() => {\n const element = ref.current;\n const {\n root,\n once,\n amount = \"any\",\n ...restArgs\n } = intersectionArguments ?? {};\n if (!element || once && isInView || typeof IntersectionObserver === \"undefined\")\n return;\n const activeIntersections = /* @__PURE__ */ new WeakMap();\n const onEnter = () => {\n if (to2) {\n api.start(to2);\n }\n setIsInView(true);\n const cleanup = () => {\n if (from) {\n api.start(from);\n }\n setIsInView(false);\n };\n return once ? void 0 : cleanup;\n };\n const handleIntersection = (entries) => {\n entries.forEach((entry) => {\n const onLeave = activeIntersections.get(entry.target);\n if (entry.isIntersecting === Boolean(onLeave)) {\n return;\n }\n if (entry.isIntersecting) {\n const newOnLeave = onEnter();\n if (is12.fun(newOnLeave)) {\n activeIntersections.set(entry.target, newOnLeave);\n } else {\n observer.unobserve(entry.target);\n }\n } else if (onLeave) {\n onLeave();\n activeIntersections.delete(entry.target);\n }\n });\n };\n const observer = new IntersectionObserver(handleIntersection, {\n root: root && root.current || void 0,\n threshold: typeof amount === \"number\" || Array.isArray(amount) ? amount : defaultThresholdOptions[amount],\n ...restArgs\n });\n observer.observe(element);\n return () => observer.unobserve(element);\n }, [intersectionArguments]);\n if (propsFn) {\n return [ref, springs];\n }\n return [ref, isInView];\n}\n\n// src/components/Spring.tsx\nfunction Spring({ children, ...props }) {\n return children(useSpring(props));\n}\n\n// src/components/Trail.tsx\nimport { is as is13 } from \"@react-spring/shared\";\nfunction Trail({\n items,\n children,\n ...props\n}) {\n const trails = useTrail(items.length, props);\n return items.map((item, index) => {\n const result = children(item, index);\n return is13.fun(result) ? result(trails[index]) : result;\n });\n}\n\n// src/components/Transition.tsx\nfunction Transition({\n items,\n children,\n ...props\n}) {\n return useTransition(items, props)(children);\n}\n\n// src/interpolate.ts\nimport { deprecateInterpolate as deprecateInterpolate2 } from \"@react-spring/shared\";\n\n// src/Interpolation.ts\nimport {\n is as is14,\n raf as raf5,\n each as each10,\n isEqual as isEqual2,\n toArray as toArray5,\n frameLoop as frameLoop3,\n getFluidValue as getFluidValue3,\n createInterpolator,\n Globals as G6,\n callFluidObservers as callFluidObservers3,\n addFluidObserver as addFluidObserver3,\n removeFluidObserver as removeFluidObserver2,\n hasFluidValue as hasFluidValue2\n} from \"@react-spring/shared\";\nimport {\n getAnimated as getAnimated3,\n setAnimated as setAnimated2,\n getAnimatedType as getAnimatedType2,\n getPayload as getPayload2\n} from \"@react-spring/animated\";\nvar Interpolation = class extends FrameValue {\n constructor(source, args) {\n super();\n this.source = source;\n /** Equals false when in the frameloop */\n this.idle = true;\n /** The inputs which are currently animating */\n this._active = /* @__PURE__ */ new Set();\n this.calc = createInterpolator(...args);\n const value = this._get();\n const nodeType = getAnimatedType2(value);\n setAnimated2(this, nodeType.create(value));\n }\n advance(_dt) {\n const value = this._get();\n const oldValue = this.get();\n if (!isEqual2(value, oldValue)) {\n getAnimated3(this).setValue(value);\n this._onChange(value, this.idle);\n }\n if (!this.idle && checkIdle(this._active)) {\n becomeIdle(this);\n }\n }\n _get() {\n const inputs = is14.arr(this.source) ? this.source.map(getFluidValue3) : toArray5(getFluidValue3(this.source));\n return this.calc(...inputs);\n }\n _start() {\n if (this.idle && !checkIdle(this._active)) {\n this.idle = false;\n each10(getPayload2(this), (node) => {\n node.done = false;\n });\n if (G6.skipAnimation) {\n raf5.batchedUpdates(() => this.advance());\n becomeIdle(this);\n } else {\n frameLoop3.start(this);\n }\n }\n }\n // Observe our sources only when we're observed.\n _attach() {\n let priority = 1;\n each10(toArray5(this.source), (source) => {\n if (hasFluidValue2(source)) {\n addFluidObserver3(source, this);\n }\n if (isFrameValue(source)) {\n if (!source.idle) {\n this._active.add(source);\n }\n priority = Math.max(priority, source.priority + 1);\n }\n });\n this.priority = priority;\n this._start();\n }\n // Stop observing our sources once we have no observers.\n _detach() {\n each10(toArray5(this.source), (source) => {\n if (hasFluidValue2(source)) {\n removeFluidObserver2(source, this);\n }\n });\n this._active.clear();\n becomeIdle(this);\n }\n /** @internal */\n eventObserved(event) {\n if (event.type == \"change\") {\n if (event.idle) {\n this.advance();\n } else {\n this._active.add(event.parent);\n this._start();\n }\n } else if (event.type == \"idle\") {\n this._active.delete(event.parent);\n } else if (event.type == \"priority\") {\n this.priority = toArray5(this.source).reduce(\n (highest, parent) => Math.max(highest, (isFrameValue(parent) ? parent.priority : 0) + 1),\n 0\n );\n }\n }\n};\nfunction isIdle(source) {\n return source.idle !== false;\n}\nfunction checkIdle(active) {\n return !active.size || Array.from(active).every(isIdle);\n}\nfunction becomeIdle(self) {\n if (!self.idle) {\n self.idle = true;\n each10(getPayload2(self), (node) => {\n node.done = true;\n });\n callFluidObservers3(self, {\n type: \"idle\",\n parent: self\n });\n }\n}\n\n// src/interpolate.ts\nvar to = (source, ...args) => new Interpolation(source, args);\nvar interpolate = (source, ...args) => (deprecateInterpolate2(), new Interpolation(source, args));\n\n// src/globals.ts\nimport {\n Globals,\n frameLoop as frameLoop4,\n createStringInterpolator\n} from \"@react-spring/shared\";\nGlobals.assign({\n createStringInterpolator,\n to: (source, args) => new Interpolation(source, args)\n});\nvar update = frameLoop4.advance;\n\n// src/index.ts\nimport {\n createInterpolator as createInterpolator2,\n useIsomorphicLayoutEffect as useIsomorphicLayoutEffect8,\n useReducedMotion,\n easings as easings2\n} from \"@react-spring/shared\";\nexport * from \"@react-spring/types\";\nexport {\n BailSignal,\n Controller,\n FrameValue,\n Globals,\n Interpolation,\n Spring,\n SpringContext,\n SpringRef,\n SpringValue,\n Trail,\n Transition,\n config,\n createInterpolator2 as createInterpolator,\n easings2 as easings,\n inferTo,\n interpolate,\n to,\n update,\n useChain,\n useInView,\n useIsomorphicLayoutEffect8 as useIsomorphicLayoutEffect,\n useReducedMotion,\n useResize,\n useScroll,\n useSpring,\n useSpringRef,\n useSpringValue,\n useSprings,\n useTrail,\n useTransition\n};\n//# sourceMappingURL=react-spring_core.modern.mjs.map","// src/index.ts\nimport { Globals } from \"@react-spring/core\";\nimport { unstable_batchedUpdates } from \"react-dom\";\nimport { createStringInterpolator, colors } from \"@react-spring/shared\";\nimport { createHost } from \"@react-spring/animated\";\n\n// src/applyAnimatedValues.ts\nvar isCustomPropRE = /^--/;\nfunction dangerousStyleValue(name, value) {\n if (value == null || typeof value === \"boolean\" || value === \"\")\n return \"\";\n if (typeof value === \"number\" && value !== 0 && !isCustomPropRE.test(name) && !(isUnitlessNumber.hasOwnProperty(name) && isUnitlessNumber[name]))\n return value + \"px\";\n return (\"\" + value).trim();\n}\nvar attributeCache = {};\nfunction applyAnimatedValues(instance, props) {\n if (!instance.nodeType || !instance.setAttribute) {\n return false;\n }\n const isFilterElement = instance.nodeName === \"filter\" || instance.parentNode && instance.parentNode.nodeName === \"filter\";\n const {\n className,\n style,\n children,\n scrollTop,\n scrollLeft,\n viewBox,\n ...attributes\n } = props;\n const values = Object.values(attributes);\n const names = Object.keys(attributes).map(\n (name) => isFilterElement || instance.hasAttribute(name) ? name : attributeCache[name] || (attributeCache[name] = name.replace(\n /([A-Z])/g,\n // Attributes are written in dash case\n (n) => \"-\" + n.toLowerCase()\n ))\n );\n if (children !== void 0) {\n instance.textContent = children;\n }\n for (const name in style) {\n if (style.hasOwnProperty(name)) {\n const value = dangerousStyleValue(name, style[name]);\n if (isCustomPropRE.test(name)) {\n instance.style.setProperty(name, value);\n } else {\n instance.style[name] = value;\n }\n }\n }\n names.forEach((name, i) => {\n instance.setAttribute(name, values[i]);\n });\n if (className !== void 0) {\n instance.className = className;\n }\n if (scrollTop !== void 0) {\n instance.scrollTop = scrollTop;\n }\n if (scrollLeft !== void 0) {\n instance.scrollLeft = scrollLeft;\n }\n if (viewBox !== void 0) {\n instance.setAttribute(\"viewBox\", viewBox);\n }\n}\nvar isUnitlessNumber = {\n animationIterationCount: true,\n borderImageOutset: true,\n borderImageSlice: true,\n borderImageWidth: true,\n boxFlex: true,\n boxFlexGroup: true,\n boxOrdinalGroup: true,\n columnCount: true,\n columns: true,\n flex: true,\n flexGrow: true,\n flexPositive: true,\n flexShrink: true,\n flexNegative: true,\n flexOrder: true,\n gridRow: true,\n gridRowEnd: true,\n gridRowSpan: true,\n gridRowStart: true,\n gridColumn: true,\n gridColumnEnd: true,\n gridColumnSpan: true,\n gridColumnStart: true,\n fontWeight: true,\n lineClamp: true,\n lineHeight: true,\n opacity: true,\n order: true,\n orphans: true,\n tabSize: true,\n widows: true,\n zIndex: true,\n zoom: true,\n // SVG-related properties\n fillOpacity: true,\n floodOpacity: true,\n stopOpacity: true,\n strokeDasharray: true,\n strokeDashoffset: true,\n strokeMiterlimit: true,\n strokeOpacity: true,\n strokeWidth: true\n};\nvar prefixKey = (prefix, key) => prefix + key.charAt(0).toUpperCase() + key.substring(1);\nvar prefixes = [\"Webkit\", \"Ms\", \"Moz\", \"O\"];\nisUnitlessNumber = Object.keys(isUnitlessNumber).reduce((acc, prop) => {\n prefixes.forEach((prefix) => acc[prefixKey(prefix, prop)] = acc[prop]);\n return acc;\n}, isUnitlessNumber);\n\n// src/AnimatedStyle.ts\nimport { AnimatedObject } from \"@react-spring/animated\";\nimport {\n is,\n each,\n toArray,\n eachProp,\n FluidValue,\n getFluidValue,\n callFluidObservers,\n hasFluidValue,\n addFluidObserver,\n removeFluidObserver\n} from \"@react-spring/shared\";\nvar domTransforms = /^(matrix|translate|scale|rotate|skew)/;\nvar pxTransforms = /^(translate)/;\nvar degTransforms = /^(rotate|skew)/;\nvar addUnit = (value, unit) => is.num(value) && value !== 0 ? value + unit : value;\nvar isValueIdentity = (value, id) => is.arr(value) ? value.every((v) => isValueIdentity(v, id)) : is.num(value) ? value === id : parseFloat(value) === id;\nvar AnimatedStyle = class extends AnimatedObject {\n constructor({ x, y, z, ...style }) {\n const inputs = [];\n const transforms = [];\n if (x || y || z) {\n inputs.push([x || 0, y || 0, z || 0]);\n transforms.push((xyz) => [\n `translate3d(${xyz.map((v) => addUnit(v, \"px\")).join(\",\")})`,\n // prettier-ignore\n isValueIdentity(xyz, 0)\n ]);\n }\n eachProp(style, (value, key) => {\n if (key === \"transform\") {\n inputs.push([value || \"\"]);\n transforms.push((transform) => [transform, transform === \"\"]);\n } else if (domTransforms.test(key)) {\n delete style[key];\n if (is.und(value))\n return;\n const unit = pxTransforms.test(key) ? \"px\" : degTransforms.test(key) ? \"deg\" : \"\";\n inputs.push(toArray(value));\n transforms.push(\n key === \"rotate3d\" ? ([x2, y2, z2, deg]) => [\n `rotate3d(${x2},${y2},${z2},${addUnit(deg, unit)})`,\n isValueIdentity(deg, 0)\n ] : (input) => [\n `${key}(${input.map((v) => addUnit(v, unit)).join(\",\")})`,\n isValueIdentity(input, key.startsWith(\"scale\") ? 1 : 0)\n ]\n );\n }\n });\n if (inputs.length) {\n style.transform = new FluidTransform(inputs, transforms);\n }\n super(style);\n }\n};\nvar FluidTransform = class extends FluidValue {\n constructor(inputs, transforms) {\n super();\n this.inputs = inputs;\n this.transforms = transforms;\n this._value = null;\n }\n get() {\n return this._value || (this._value = this._get());\n }\n _get() {\n let transform = \"\";\n let identity = true;\n each(this.inputs, (input, i) => {\n const arg1 = getFluidValue(input[0]);\n const [t, id] = this.transforms[i](\n is.arr(arg1) ? arg1 : input.map(getFluidValue)\n );\n transform += \" \" + t;\n identity = identity && id;\n });\n return identity ? \"none\" : transform;\n }\n // Start observing our inputs once we have an observer.\n observerAdded(count) {\n if (count == 1)\n each(\n this.inputs,\n (input) => each(\n input,\n (value) => hasFluidValue(value) && addFluidObserver(value, this)\n )\n );\n }\n // Stop observing our inputs once we have no observers.\n observerRemoved(count) {\n if (count == 0)\n each(\n this.inputs,\n (input) => each(\n input,\n (value) => hasFluidValue(value) && removeFluidObserver(value, this)\n )\n );\n }\n eventObserved(event) {\n if (event.type == \"change\") {\n this._value = null;\n }\n callFluidObservers(this, event);\n }\n};\n\n// src/primitives.ts\nvar primitives = [\n \"a\",\n \"abbr\",\n \"address\",\n \"area\",\n \"article\",\n \"aside\",\n \"audio\",\n \"b\",\n \"base\",\n \"bdi\",\n \"bdo\",\n \"big\",\n \"blockquote\",\n \"body\",\n \"br\",\n \"button\",\n \"canvas\",\n \"caption\",\n \"cite\",\n \"code\",\n \"col\",\n \"colgroup\",\n \"data\",\n \"datalist\",\n \"dd\",\n \"del\",\n \"details\",\n \"dfn\",\n \"dialog\",\n \"div\",\n \"dl\",\n \"dt\",\n \"em\",\n \"embed\",\n \"fieldset\",\n \"figcaption\",\n \"figure\",\n \"footer\",\n \"form\",\n \"h1\",\n \"h2\",\n \"h3\",\n \"h4\",\n \"h5\",\n \"h6\",\n \"head\",\n \"header\",\n \"hgroup\",\n \"hr\",\n \"html\",\n \"i\",\n \"iframe\",\n \"img\",\n \"input\",\n \"ins\",\n \"kbd\",\n \"keygen\",\n \"label\",\n \"legend\",\n \"li\",\n \"link\",\n \"main\",\n \"map\",\n \"mark\",\n \"menu\",\n \"menuitem\",\n \"meta\",\n \"meter\",\n \"nav\",\n \"noscript\",\n \"object\",\n \"ol\",\n \"optgroup\",\n \"option\",\n \"output\",\n \"p\",\n \"param\",\n \"picture\",\n \"pre\",\n \"progress\",\n \"q\",\n \"rp\",\n \"rt\",\n \"ruby\",\n \"s\",\n \"samp\",\n \"script\",\n \"section\",\n \"select\",\n \"small\",\n \"source\",\n \"span\",\n \"strong\",\n \"style\",\n \"sub\",\n \"summary\",\n \"sup\",\n \"table\",\n \"tbody\",\n \"td\",\n \"textarea\",\n \"tfoot\",\n \"th\",\n \"thead\",\n \"time\",\n \"title\",\n \"tr\",\n \"track\",\n \"u\",\n \"ul\",\n \"var\",\n \"video\",\n \"wbr\",\n // SVG\n \"circle\",\n \"clipPath\",\n \"defs\",\n \"ellipse\",\n \"foreignObject\",\n \"g\",\n \"image\",\n \"line\",\n \"linearGradient\",\n \"mask\",\n \"path\",\n \"pattern\",\n \"polygon\",\n \"polyline\",\n \"radialGradient\",\n \"rect\",\n \"stop\",\n \"svg\",\n \"text\",\n \"tspan\"\n];\n\n// src/index.ts\nexport * from \"@react-spring/core\";\nGlobals.assign({\n batchedUpdates: unstable_batchedUpdates,\n createStringInterpolator,\n colors\n});\nvar host = createHost(primitives, {\n applyAnimatedValues,\n createAnimatedStyle: (style) => new AnimatedStyle(style),\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n getComponentProps: ({ scrollTop, scrollLeft, ...props }) => props\n});\nvar animated = host.animated;\nexport {\n animated as a,\n animated\n};\n//# sourceMappingURL=react-spring_web.modern.mjs.map","import styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\n\nconst ContainerStyle = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-modal-container-gap);\n grid-template-rows: auto 1fr auto;\n height: calc(100% - var(--ddk-component-modal-content-padding) * 2);\n padding: var(--ddk-component-modal-content-padding);\n`;\n\ninterface ModalContentProps {\n children?: ReactNode;\n contain?: boolean;\n}\n\nexport const ModalContent = ({ children, contain = true }: ModalContentProps) =>\n contain ? <ContainerStyle>{children}</ContainerStyle> : children;\n","/** @jsxImportSource @emotion/react */\n\nimport { css } from \"@emotion/react\";\nimport styled from \"@emotion/styled\";\nimport { animated, useTransition } from \"@react-spring/web\";\nimport { ReactNode, Suspense } from \"react\";\nimport { createPortal } from \"react-dom\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { Container } from \"../../styles\";\nimport { ModalContent } from \"./modal-content\";\n\nexport type ModalMode = \"fullscreen\" | \"maximized\";\n\nconst modalStyles = (mode?: ModalMode, enableAnimation?: boolean) => css`\n align-items: center;\n background-color: var(--ddk-component-modal-shade-background-color);\n bottom: 0;\n display: flex;\n flex-direction: column;\n justify-content: center;\n left: 0;\n padding: ${mode === \"fullscreen\"\n ? \"var(--ddk-component-modal-padding-fullscreen)\"\n : \"var(--ddk-component-modal-padding-maximized)\"};\n position: fixed;\n max-width: var(--ddk-component-shell-max-width);\n max-height: var(--ddk-component-shell-max-height);\n right: 0;\n top: 0;\n gap: 32px;\n z-index: 1;\n\n &.fullscreen {\n padding: 0;\n }\n\n & .modal {\n animation: ${enableAnimation\n ? \"grow var(--ddk-component-modal-transition-duration) var(--ddk-component-modal-transition-timing-function)\"\n : \"none\"};\n background-color: var(--ddk-component-modal-background-color);\n border-radius: var(--ddk-component-modal-border-radius);\n display: flex;\n flex-direction: column;\n min-height: var(--ddk-component-modal-min-height);\n min-width: var(--ddk-component-modal-min-width);\n max-width: var(--ddk-component-modal-max-width);\n max-height: var(--ddk-component-modal-max-height);\n width: var(--ddk-component-modal-width);\n\n &.fullscreen {\n border-radius: 0;\n max-height: initial;\n height: var(--ddk-component-shell-max-height);\n max-width: initial;\n width: var(--ddk-component-shell-max-width);\n }\n\n &.maximized {\n height: 100%;\n max-width: initial;\n width: 100%;\n }\n }\n\n @keyframes grow {\n 0% {\n transform: scale(0.66);\n }\n 100% {\n transform: scale(1);\n }\n }\n`;\n\ninterface ModalContainerProps {\n mode?: ModalMode;\n}\n\nconst ModalContainer = styled(Container)<ModalContainerProps>`\n align-items: center;\n display: flex;\n flex-direction: column;\n justify-content: center;\n max-width: ${(props) =>\n props.mode === \"fullscreen\"\n ? \"var(--ddk-component-shell-max-width)\"\n : \"var(--ddk-component-modal-max-width)\"};\n /* height: ${(props) => props.mode === \"maximized\" && \"100%\"}; */\n`;\n\nexport interface ModalProps {\n children: ReactNode;\n closeOnShroudClick?: boolean;\n contain?: boolean;\n enableAnimation?: boolean;\n mode?: ModalMode;\n onClose?: () => void;\n onClosed?: () => void;\n show?: boolean;\n width?: number;\n height?: number;\n}\n\nexport const Modal = ({\n children,\n closeOnShroudClick = true,\n contain = true,\n enableAnimation,\n mode,\n onClose,\n onClosed,\n show,\n width,\n height,\n ...props\n}: ModalProps) => {\n const componentConfigurationContext = useComponentConfigurationContext();\n\n const enableAnimationValue =\n enableAnimation !== undefined\n ? enableAnimation\n : componentConfigurationContext.enableModalAnimation;\n\n mode = componentConfigurationContext.modalModeOverride ?? mode;\n\n const transition = useTransition(show, {\n initial: { opacity: 0 },\n from: { opacity: 0 },\n enter: { opacity: 1 },\n leave: { opacity: 0 },\n onDestroyed: onClosed,\n immediate: !enableAnimationValue,\n });\n\n return createPortal(\n transition(\n (style, item) =>\n item && (\n <animated.div\n css={modalStyles(mode, enableAnimationValue)}\n style={style}\n onPointerDown={() =>\n mode !== \"maximized\" && closeOnShroudClick && onClose?.()\n }\n >\n <ModalContainer\n {...props}\n contain={mode !== \"fullscreen\"}\n mode={mode}\n >\n <div\n className={`modal${\n mode === \"fullscreen\"\n ? \" fullscreen\"\n : mode === \"maximized\"\n ? \" maximized\"\n : \"\"\n }`}\n onPointerDown={(event) => event.stopPropagation()}\n style={{ width, height }}\n >\n <Suspense>\n <ModalContent contain={contain}>{children}</ModalContent>\n </Suspense>\n </div>\n </ModalContainer>\n </animated.div>\n )\n ),\n document.body\n );\n};\n","import styled from \"@emotion/styled\";\n\nexport const ModalContainer = styled.div`\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n overflow-x: hidden;\n gap: var(--ddk-component-base-modal-container-gap);\n height: 100%;\n`;\n","import styled from \"@emotion/styled\";\nimport {\n ErrorIconWithBackground,\n InformationIconWithBackground,\n InformationQuestionIconWithBackground,\n LoaderIconWithBackground,\n MessageInformationIconWithBackground,\n MessageQuestionIconWithBackground,\n SuccessIconWithBackground,\n} from \"@kosdev-code/kos-ddk-styles\";\nimport type { ReactNode } from \"react\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { BackButton } from \"../back-button\";\nimport {\n Content,\n Footer,\n Header,\n Modal,\n ModalContainer,\n type ModalProps,\n} from \"../modal\";\n\nconst WorkflowModalBase = styled(Modal)`\n --ddk-component-modal-min-height: var(\n --ddk-component-workflow-modal-min-height\n );\n`;\n\nconst WorkflowContent = styled(Content)`\n align-items: center;\n gap: 24px;\n`;\n\nexport type Status =\n | \"error\"\n | \"information-default\"\n | \"information\"\n | \"loading\"\n | \"question-default\"\n | \"question\"\n | \"success\";\n\nconst defaultIconStyle = {\n height: \"56px\",\n width: \"56px\",\n};\n\nconst RotationIcon = styled.div`\n display: flex;\n animation: rotation 2s infinite linear;\n @keyframes rotation {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n }\n`;\n\nconst getIcon = (status?: Status, iconStyle?: any) => {\n switch (status) {\n case \"error\":\n return <ErrorIconWithBackground style={iconStyle} />;\n case \"information-default\":\n return <InformationIconWithBackground style={iconStyle} />;\n case \"information\":\n return <MessageInformationIconWithBackground style={iconStyle} />;\n case \"loading\":\n return (\n <RotationIcon>\n <LoaderIconWithBackground style={iconStyle} />\n </RotationIcon>\n );\n case \"question-default\":\n return <InformationQuestionIconWithBackground style={iconStyle} />;\n case \"question\":\n return <MessageQuestionIconWithBackground style={iconStyle} />;\n case \"success\":\n return <SuccessIconWithBackground style={iconStyle} />;\n default:\n return undefined;\n }\n};\n\nexport interface WorkflowModalProps extends Omit<ModalProps, \"children\"> {\n closeButtonLabel?: string;\n footer?: ReactNode;\n iconStyle?: any;\n information?: ReactNode;\n showCloseButton?: boolean;\n status?: Status;\n title?: string;\n}\n\nexport const WorkflowModal = ({\n closeButtonLabel,\n footer,\n iconStyle = defaultIconStyle,\n information,\n onClose,\n show = true,\n showCloseButton = true,\n status,\n title,\n ...props\n}: WorkflowModalProps) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <WorkflowModalBase\n {...props}\n contain={componentModeOverride !== \"compact\"}\n show={show}\n onClose={onClose}\n >\n <ModalContainer>\n {((showCloseButton && !!onClose) || title) && (\n <Header\n closeButtonLabel={closeButtonLabel}\n CloseButton={\n componentModeOverride === \"compact\" ? BackButton : undefined\n }\n contain={componentModeOverride === \"compact\"}\n onClose={onClose}\n showCloseButton={showCloseButton}\n title={title}\n />\n )}\n\n <WorkflowContent contain={componentModeOverride === \"compact\"}>\n {getIcon(status, iconStyle)}\n {information}\n </WorkflowContent>\n\n <Footer>{footer}</Footer>\n </ModalContainer>\n </WorkflowModalBase>\n );\n};\n","import { useKosTranslation } from \"@kosdev-code/kos-ui-sdk\";\nimport {\n BodyLargeInformation,\n Button,\n HeadingMediumInformation,\n} from \"../../styles\";\nimport {\n WorkflowModal,\n type Status,\n type WorkflowModalProps,\n} from \"../workflow-modal\";\n\ninterface ConfirmationModalProps\n extends Omit<WorkflowModalProps, \"information\"> {\n cancelLabel?: string;\n confirmLabel?: string;\n heading?: string;\n body?: string;\n onCancel?: () => void;\n onClose?: () => void;\n onConfirm: () => void;\n status?: Status;\n}\n\nexport const ConfirmationModal = ({\n body,\n cancelLabel,\n confirmLabel,\n heading,\n onCancel,\n onClose,\n onConfirm,\n status,\n ...props\n}: ConfirmationModalProps) => (\n <WorkflowModal\n {...props}\n footer={\n <>\n {onCancel && <Button onPointerDown={onCancel}>{cancelLabel}</Button>}\n {onConfirm && <Button onPointerDown={onConfirm}>{confirmLabel}</Button>}\n </>\n }\n iconStyle={{\n height: \"68px\",\n width: \"68px\",\n }}\n information={\n <>\n {heading && (\n <HeadingMediumInformation>{heading}</HeadingMediumInformation>\n )}\n {body && <BodyLargeInformation>{body}</BodyLargeInformation>}\n </>\n }\n onClose={onClose}\n showCloseButton={!!onClose}\n status={status}\n />\n);\n\nexport const ConfirmationModalContainer = ({\n cancelLabel,\n confirmLabel,\n ...props\n}: ConfirmationModalProps) => {\n const { t } = useKosTranslation(\"common\", {\n keyPrefix: \"confirmation-modal\",\n });\n\n cancelLabel = cancelLabel ?? t(\"cancel\");\n confirmLabel = confirmLabel ?? t(\"confirm\");\n\n return (\n <ConfirmationModal\n cancelLabel={cancelLabel}\n confirmLabel={confirmLabel}\n {...props}\n />\n );\n};\n","import styled from \"@emotion/styled\";\nimport { FunctionComponent, useRef } from \"react\";\n// import { ErrorLabel } from \"../error-label\";\nimport { ChevronRightIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport { useComponentConfigurationContext } from \"../../core\";\n\ninterface CardProps {\n backgroundColor?: string;\n disabled?: boolean;\n}\n\nconst Indicator = styled.div<CardProps>`\n background-color: ${(props) =>\n props.backgroundColor && props.backgroundColor};\n\n border-bottom-left-radius: 4px;\n border-top-left-radius: 4px;\n bottom: 0;\n height: 100%;\n left: 0;\n position: absolute;\n top: 0;\n width: 4px;\n z-index: 1;\n`;\n\nexport const DashboardCardContainer = styled.div<CardProps>`\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-generic-color-grey-50, #888888)\"\n : props.backgroundColor\n ? props.backgroundColor\n : \"var(--ddk-generic-color-white, #ffffff)\"};\n\n border-radius: 8px;\n border: 1px solid var(--ddk-generic-color-grey-20, #dfdede);\n box-sizing: border-box;\n\n color: ${(props) =>\n props.color ?? props.backgroundColor === \"black\"\n ? \"var(--ddk-generic-color-white, #ffffff)\"\n : \"var(--Grey-100, #171717)\"};\n\n cursor: pointer;\n display: grid;\n flex-direction: column;\n gap: 4px;\n grid-template-areas: var(--ddk-component-dashboard-card-layout);\n grid-template-columns: var(--ddk-component-dashboard-card-layout-columns);\n grid-template-rows: var(--ddk-component-dashboard-card-layout-rows);\n height: var(--ddk-component-dashboard-card-height);\n overflow: visible;\n padding: var(--ddk-component-dashboard-card-padding);\n position: relative;\n user-select: none;\n flex: 1 1 var(--ddk-component-dashboard-card-large-width);\n min-width: var(--ddk-component-dashboard-card-min-width, auto);\n max-width: var(--ddk-component-dashboard-card-large-width);\n max-height: var(--ddk-component-dashboard-card-max-height);\n`;\n\nexport const CardAvatar = styled.div<CardProps>`\n align-items: center;\n align-self: center;\n background-color: var(--ddk-component-dashboard-card-avatar-background-color);\n border: var(--ddk-component-dashboard-card-avatar-border);\n\n color: ${(props) =>\n props.backgroundColor === \"black\"\n ? \"var(--ddk-generic-color-white, #ffffff)\"\n : \"var(--Grey-100, #171717)\"};\n\n display: flex;\n font-size: var(--ddk-component-dashboard-card-avatar-font-size);\n font-weight: var(--ddk-component-dashboard-card-avatar-font-weight, 700);\n grid-area: avatar;\n height: var(--ddk-component-dashboard-card-avatar-height);\n justify-content: center;\n justify-self: center;\n padding: var(--ddk-component-dashboard-card-avatar-padding);\n width: var(--ddk-component-dashboard-card-avatar-width);\n z-index: 1;\n`;\n\nexport const CardTitle = styled.div<CardProps>`\n align-items: center;\n z-index: 1;\n grid-area: title;\n\n display: flex;\n font-size: var(--ddk-component-dashboard-card-title-font-size);\n font-style: normal;\n font-weight: 600;\n gap: 12px;\n\n letter-spacing: 0.56px;\n\n max-height: 36px;\n`;\n\nexport const CardBody = styled.div`\n align-items: center;\n grid-area: body;\n display: flex;\n gap: 8px;\n min-height: 0;\n flex: 1;\n`;\n\nexport const CardFooter = styled.div`\n align-items: center;\n grid-area: footer;\n display: flex;\n font-size: 14px;\n flex-wrap: wrap;\n`;\n\nexport const CardErrors = styled.div`\n display: flex;\n grid-area: errors;\n justify-content: center;\n align-items: center;\n width: 100%;\n z-index: 1;\n position: relative;\n`;\n\nexport const CardNav = styled(ChevronRightIcon)`\n align-self: center;\n grid-area: nav;\n justify-self: flex-end;\n z-index: 1;\n`;\n\nconst DashboardCardHeader = styled.div<CardProps>`\n border-radius: 8px 8px 0 0;\n height: 30px;\n width: 100%;\n position: absolute;\n top: 0;\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-generic-color-grey-50, #888888)\"\n : props.backgroundColor\n ? props.backgroundColor\n : \"var(--ddk-component-dashboard-card-header-background-color)\"};\n`;\n\ninterface Props {\n avatar?: React.ReactNode;\n body?: React.ReactNode;\n cardId: string;\n color?: string;\n headerBackgroundColor?: string;\n backgroundColor?: string;\n errors?: number;\n footer?: React.ReactNode;\n disabled?: boolean;\n indicatorColor?: string;\n onCardSelect?: (cardId: string) => void;\n showNavIcon?: boolean;\n title?: React.ReactNode;\n}\n\nconst DashboardCard: FunctionComponent<Props> = ({\n avatar,\n body,\n cardId,\n color,\n headerBackgroundColor,\n backgroundColor,\n errors: _errors,\n footer,\n disabled,\n indicatorColor,\n onCardSelect,\n showNavIcon,\n title,\n}) => {\n if (!headerBackgroundColor) headerBackgroundColor = backgroundColor;\n\n const pointerIdRef = useRef(null);\n\n const handlePointerDown = (event) => {\n pointerIdRef.current = event.pointerId;\n };\n\n const handlePointerUp = (event) => {\n if (pointerIdRef.current === event.pointerId) {\n onCardSelect?.(cardId);\n }\n\n pointerIdRef.current = null;\n };\n\n const { componentModeOverride } = useComponentConfigurationContext();\n const isCompact = componentModeOverride === \"compact\";\n\n return (\n <DashboardCardContainer\n color={color}\n backgroundColor={backgroundColor}\n onPointerDown={handlePointerDown}\n onPointerUp={handlePointerUp}\n disabled={disabled}\n >\n {isCompact && indicatorColor && (\n <Indicator backgroundColor={indicatorColor} />\n )}\n <DashboardCardHeader\n backgroundColor={headerBackgroundColor}\n disabled={disabled}\n ></DashboardCardHeader>\n {/*\n // Enabling the code below adds a red error notification counter...\n {!!errors && (\n <CardErrors>\n <ErrorLabel count={errors} />\n </CardErrors>\n )} */}\n {!!avatar && (\n <CardAvatar backgroundColor={backgroundColor}>{avatar}</CardAvatar>\n )}\n {title && (\n <CardTitle backgroundColor={backgroundColor}>{title}</CardTitle>\n )}\n <CardBody>{body}</CardBody>\n {componentModeOverride === \"compact\" && !!showNavIcon && <CardNav />}\n {!!footer && <CardFooter>{footer}</CardFooter>}\n </DashboardCardContainer>\n );\n};\n\nexport const AgitatorDashboardCard: FunctionComponent<Omit<Props, \"width\">> = (\n props\n) => <DashboardCard {...props} />;\n\nexport const HolderDashboardCard: FunctionComponent<Omit<Props, \"width\">> = (\n props\n) => <DashboardCard {...props} />;\n","import styled from \"@emotion/styled\";\nimport { useSpring, animated, useTransition, config } from \"@react-spring/web\";\nimport { useGesture } from \"@use-gesture/react\";\nimport {\n ComponentType,\n ReactNode,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { useComponentConfigurationContext } from \"../../core\";\n\nconst MOVEMENT_THRESHOLD = 10;\n\nconst Container = styled(animated.div)`\n overflow: hidden;\n position: relative;\n touch-action: none;\n user-select: none;\n width: 100%;\n`;\n\nconst Item = styled(animated.div)`\n align-items: center;\n display: flex;\n justify-content: center;\n position: absolute;\n width: 100%;\n`;\n\nexport interface DialItem<T = number | string> {\n id: T;\n label: string;\n [key: string]: unknown;\n}\n\nexport interface DialItemRendererProps<T> {\n children?: ReactNode;\n item: DialItem<T>;\n selected?: boolean;\n}\n\nexport type DialItemRenderer<T> = ComponentType<DialItemRendererProps<T>>;\n\nexport interface DialProps<T> {\n className?: string;\n enableAnimation?: boolean;\n itemRenderer?: DialItemRenderer<T>;\n items?: DialItem<T>[];\n itemSize?: number;\n loop?: boolean;\n numberOfVisibleItems?: number;\n offset?: boolean;\n selectedItemId?: T;\n selectedItemOffset?: number;\n onChange?: (item: DialItem<T>) => void;\n}\n\nconst modulo = (value: number, modulus: number) =>\n ((value % modulus) + modulus) % modulus;\n\nexport const Dial = <T,>({\n className,\n enableAnimation,\n itemRenderer: ItemRenderer,\n items = [],\n itemSize = 20,\n loop,\n numberOfVisibleItems = 13,\n offset = false,\n selectedItemId,\n selectedItemOffset,\n onChange,\n}: DialProps<T>) => {\n const componentConfigurationContext = useComponentConfigurationContext();\n\n const enableAnimationValue =\n enableAnimation !== undefined\n ? enableAnimation\n : componentConfigurationContext.enableDialAnimation;\n\n const short = items.length <= numberOfVisibleItems;\n const loopValue = loop !== undefined ? loop : short ? false : true;\n\n const selectedItemOffsetValue =\n selectedItemOffset ?? Math.floor(numberOfVisibleItems / 2);\n\n const visibleSize =\n (offset ? numberOfVisibleItems - 1 : numberOfVisibleItems) * itemSize;\n\n const dragged = useRef(false);\n const pointerDown = useRef(false);\n\n // selected item index...\n const selectedItemIndex = useMemo(() => {\n const index = items.findIndex((item) => item.id === selectedItemId);\n if (index === undefined || index === -1) return 0;\n return index;\n }, [items, selectedItemId]);\n\n // current index...\n const [currentIndex, setCurrentIndex] = useState(\n selectedItemIndex - selectedItemOffsetValue\n );\n\n const getItem = (index: number) =>\n items[modulo(index + selectedItemOffsetValue, items.length)];\n\n const getScrollTarget = useCallback(\n (index: number) => -index * itemSize,\n [itemSize]\n );\n\n const clampScrollOffset = (scrollOffset: number) => {\n if (loopValue === false) {\n const min = (items.length - selectedItemOffsetValue - 1) * itemSize;\n const max = selectedItemOffsetValue * itemSize;\n\n if (scrollOffset < -max) {\n return -max;\n } else if (scrollOffset > min) {\n return min;\n }\n }\n\n return scrollOffset;\n };\n\n // The scroll offset is the position of the list...\n const scrollOffsetRef = useRef(0);\n\n // The spring is what controls the movement of the list...\n const [{ value }, api] = useSpring(\n {\n to: { value: -selectedItemIndex * itemSize },\n config: config.default,\n immediate: true,\n },\n [selectedItemIndex, itemSize]\n );\n\n // visible items...\n const visibleItems = useMemo(() => {\n const visibleItems: {\n index: number;\n position: number;\n data: DialItem<T>;\n }[] = [];\n\n for (let i = 0; i < numberOfVisibleItems; ++i) {\n // When loop is enabled, the offsetIndex is a wrapped index to retrieve\n // the looped item's value...\n const offsetIndex = loopValue\n ? modulo(currentIndex + i, items.length)\n : currentIndex + i;\n\n // If loop is disabled, we limit infinite indexing...\n if (\n (loopValue === false && offsetIndex < 0) ||\n offsetIndex >= items.length\n )\n continue;\n\n visibleItems.push({\n index: currentIndex + i, // This represents the \"selected\" index, plus the visible item's offset index...\n position:\n (currentIndex + i) * itemSize + (offset ? -itemSize * 0.5 : 0), // This offsets the item by its visible offset index...\n data: items[offsetIndex],\n });\n }\n\n return visibleItems;\n }, [currentIndex, items, itemSize, loopValue, numberOfVisibleItems, offset]);\n\n // elements...\n const transitions = useTransition(visibleItems, {\n // Set the item's key to its index...\n keys: (item) => item.index,\n\n // Animation values are not actually utilized for the transition phase, but\n // exist as a means to delay the leave transition method so items remain on\n // screen until scrolling has settled...\n from: { value: 0 },\n enter: { value: 1 },\n leave: { value: 0 },\n config: config.gentle,\n });\n\n // drag...\n const bind = useGesture({\n onPointerDown: () => {\n pointerDown.current = true;\n },\n onPointerUp: () => {\n pointerDown.current = false;\n },\n onDragStart: () => {\n dragged.current = false;\n // Reset the scroll offset based on the current index position...\n scrollOffsetRef.current = currentIndex * itemSize;\n },\n onDrag: ({ delta: [, dy], down, movement: [mx, my] }) => {\n // If we're not dragging, don't do anything...\n if (!down) return;\n\n if (\n Math.abs(mx) > MOVEMENT_THRESHOLD ||\n Math.abs(my) > MOVEMENT_THRESHOLD\n ) {\n dragged.current = true;\n }\n\n scrollOffsetRef.current = clampScrollOffset(scrollOffsetRef.current - dy);\n\n const nextIndex = Math.floor(scrollOffsetRef.current / itemSize);\n\n if (nextIndex !== currentIndex) {\n setCurrentIndex(nextIndex);\n onChange?.(getItem(nextIndex));\n\n // Configure the scroll spring to have stiff movement...\n api.start({\n value: getScrollTarget(nextIndex),\n config: config.stiff,\n immediate: !enableAnimationValue,\n });\n }\n },\n onDragEnd: ({\n velocity: [, vy],\n direction: [, dy],\n movement: [mx, my],\n }) => {\n // If we haven't dragged enough, don't do anything...\n if (\n Math.abs(mx) < MOVEMENT_THRESHOLD &&\n Math.abs(my) < MOVEMENT_THRESHOLD\n ) {\n return;\n }\n\n // Calculate a gesture throw distance... It's not very far to improve stability...\n scrollOffsetRef.current = clampScrollOffset(\n scrollOffsetRef.current - vy * dy * 10\n );\n\n const nextIndex = Math.floor(scrollOffsetRef.current / itemSize);\n\n if (nextIndex !== currentIndex) {\n setCurrentIndex(nextIndex);\n onChange?.(getItem(nextIndex));\n\n // Configure the scroll spring to have more inertia...\n api.start({\n value: getScrollTarget(nextIndex),\n config: config.slow,\n immediate: !enableAnimationValue,\n });\n }\n },\n });\n\n useEffect(() => {\n const index = selectedItemIndex - selectedItemOffsetValue;\n setCurrentIndex(index);\n api.start({\n value: getScrollTarget(index),\n config: config.default,\n immediate: true,\n });\n }, [\n api,\n getScrollTarget,\n itemSize,\n selectedItemIndex,\n selectedItemOffsetValue,\n ]);\n\n return (\n <Container\n {...bind()}\n className={className}\n style={{ height: visibleSize }}\n >\n {transitions((_style, item) => (\n <Item\n style={{\n height: itemSize,\n // Position the item based on the global scroll value and the item's position...\n y: value.to((value) => value + item.position),\n }}\n onPointerUp={() => {\n // Set the index to the selected item...\n if (pointerDown.current && !dragged.current) {\n const index = item.index - selectedItemOffsetValue;\n setCurrentIndex(index);\n onChange?.(getItem(index));\n api.start({\n value: getScrollTarget(index),\n config: config.stiff,\n immediate: !enableAnimationValue,\n });\n }\n }}\n >\n {ItemRenderer ? (\n <ItemRenderer\n item={item.data}\n selected={item.index === currentIndex + selectedItemOffsetValue}\n >\n {item.data.label}\n </ItemRenderer>\n ) : (\n item.data.label\n )}\n </Item>\n ))}\n </Container>\n );\n};\n","import { DropdownIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport { ActionItemButton, ActionItemButtonProps } from \"../../styles\";\n\nexport const Dropdown = ({\n children,\n Icon,\n ...props\n}: ActionItemButtonProps) => (\n <ActionItemButton {...props}>\n {children || <span></span>}\n {Icon ? <Icon /> : <DropdownIcon />}\n </ActionItemButton>\n);\n","import { css } from \"@emotion/react\";\nimport styled from \"@emotion/styled\";\nimport { CloseIcon, ErrorIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { Button } from \"../../styles\";\n\ninterface Props {\n heading: string;\n message?: string;\n onPointerDown?: () => void;\n}\n\nconst ErrorHeader = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n`;\n\nconst ErrorTitle = styled.p`\n font-size: var(--ddk-component-failure-card-font-size);\n font-weight: var(--ddk-component-failure-card-font-weight);\n letter-spacing: 0.44px;\n color: var(--ddk-component-failure-card-color);\n margin: 0;\n`;\n\nconst errorIcon = css`\n box-sizing: border-box;\n border-radius: 50px;\n background-color: var(--ddk-component-failure-card-background-color-red);\n color: var(--ddk-component-failure-card-icon-color);\n width: var(--ddk-component-failure-card-icon-size);\n height: var(--ddk-component-failure-card-icon-size);\n padding: var(--ddk-component-failure-card-icon-padding);\n`;\n\nconst ErrorTitleHead = styled.div`\n display: flex;\n align-items: center;\n gap: var(--ddk-component-failure-card-icon-gap);\n`;\n\nconst errorCloseIcon = css`\n width: 40px;\n height: 40px;\n background-color: transparent;\n color: var(--ddk-component-failure-card-color);\n`;\n\nconst ErrorBody = styled.div`\n border-top: 1px solid var(--ddk-component-failure-card-border-color);\n padding: var(--ddk-component-failure-card-padding);\n width: 100%;\n\n p {\n font-size: var(--ddk-component-failure-card-subtext-font-size);\n font-weight: var(--ddk-component-failure-card-font-weight);\n color: var(--ddk-component-failure-card-color);\n margin: 0;\n }\n`;\n\nexport const FailureCard = ({ heading, message, onPointerDown }: Props) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n const isCompact = componentModeOverride === \"compact\";\n\n return (\n <>\n <ErrorHeader>\n <ErrorTitleHead>\n <ErrorIcon css={errorIcon} />\n <ErrorTitle>{heading}</ErrorTitle>\n </ErrorTitleHead>\n {isCompact ? null : (\n <CloseIcon css={errorCloseIcon} onPointerDown={onPointerDown} />\n )}\n </ErrorHeader>\n {message && (\n <ErrorBody>\n <p>{message}</p>\n </ErrorBody>\n )}\n {isCompact && (\n <Button mode=\"primary\" onPointerDown={onPointerDown}>\n Close\n </Button>\n )}\n </>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { kosComponent } from \"@kosdev-code/kos-ui-sdk\";\nimport { ReactNode, type ElementType } from \"react\";\n\nexport interface TableData {\n [key: string]: any;\n}\n\ntype Mode = \"standard\" | \"info\";\n\nconst TableStyle = styled.div<{ $tableLayout?: \"auto\" | \"fixed\" }>`\n background-color: var(--ddk-component-table-background-color);\n border-radius: var(--ddk-component-table-border-radius);\n border-color: var(--ddk-component-table-border-color);\n border-style: var(--ddk-component-table-border-style);\n border-width: var(--ddk-component-table-border-width);\n overflow: hidden;\n box-sizing: border-box;\n width: 100%;\n\n & table {\n overflow: hidden;\n border-collapse: collapse;\n border-radius: var(--ddk-component-table-border-radius);\n border-spacing: 0;\n width: 100%;\n table-layout: ${(props) => props.$tableLayout || \"auto\"};\n\n & tr {\n border-top: var(--ddk-component-table-border-width)\n var(--ddk-component-table-border-style)\n var(--ddk-component-table-border-color);\n vertical-align: top;\n\n &.no-heading:first-of-type {\n border-top: none;\n }\n }\n\n & .heading {\n background-color: var(--ddk-component-table-heading-background-color);\n height: var(--ddk-component-table-heading-height);\n\n &:first-of-type {\n border-top: none;\n }\n\n & th {\n color: var(--ddk-component-table-heading-color);\n font-size: var(--ddk-component-table-heading-font-size);\n font-weight: var(--ddk-component-table-heading-font-weight);\n padding: var(--ddk-component-table-heading-padding);\n text-align: var(--ddk-component-table-heading-text-align);\n }\n }\n\n & .headers {\n & th {\n border-top: var(--ddk-component-table-border-width)\n var(--ddk-component-table-border-style)\n var(--ddk-component-table-border-color);\n color: var(--ddk-component-table-header-color);\n font-size: var(--ddk-component-table-header-font-size);\n font-weight: var(--ddk-component-table-header-font-weight);\n padding: var(--ddk-component-table-header-padding);\n text-align: var(--ddk-component-table-header-text-align);\n box-sizing: border-box;\n\n ${(props) =>\n props.$tableLayout === \"fixed\" &&\n `\n &:last-child {\n text-align: right;\n padding-right: var(--ddk-component-table-header-padding);\n }\n `}\n }\n\n &.no-heading {\n & th {\n border-top: none;\n }\n }\n }\n\n & .data {\n & td {\n padding: var(--ddk-component-table-data-padding);\n box-sizing: border-box;\n\n ${(props) =>\n props.$tableLayout === \"fixed\" &&\n `\n &:last-child {\n text-align: right;\n padding-right: var(--ddk-component-table-data-padding);\n }\n `}\n }\n }\n }\n\n // table-info...\n &.info {\n background-color: var(--ddk-component-table-info-background-color);\n border-radius: var(--ddk-component-table-info-border-radius);\n\n & table {\n overflow: hidden;\n border-radius: var(--ddk-component-table-border-radius);\n\n & .heading {\n background-color: var(\n --ddk-component-table-info-heading-background-color\n );\n }\n\n & .headers {\n & th {\n border-top: var(--ddk-component-table-info-border-width)\n var(--ddk-component-table-info-border-style)\n var(--ddk-component-table-info-border-color);\n }\n\n &.indent {\n & th {\n padding: var(--ddk-component-table-info-data-indent-padding);\n }\n }\n }\n\n & .data {\n &.indent {\n & td {\n padding: var(--ddk-component-table-info-data-indent-padding);\n }\n }\n }\n }\n }\n\n & .content {\n box-sizing: border-box;\n padding: var(--ddk-component-table-content-padding);\n }\n`;\n\nexport const getItemData = (item: unknown, key: string): ReactNode =>\n key.split(\".\").reduce((o, i) => o?.[i], item) as ReactNode;\n\nexport interface CellRendererProps {\n item: TableData;\n valueKey: string;\n}\n\nconst DefaultCellRenderer = ({ item, valueKey }: CellRendererProps) =>\n getItemData(item, valueKey);\n\nexport interface RowRendererProps {\n CellRenderer: ElementType;\n dataKeys: string[];\n item: TableData;\n}\n\nconst DefaultRowRenderer = ({\n CellRenderer = DefaultCellRenderer,\n dataKeys,\n item,\n}: RowRendererProps) =>\n dataKeys?.map((key, index) => (\n <td key={index}>\n <CellRenderer key={index} item={item} valueKey={key} />\n </td>\n ));\n\nexport interface TableProps {\n CellRenderer?: ElementType;\n children?: ReactNode;\n className?: string;\n data: TableData[];\n dataKeys: string[];\n headers?: ReactNode[];\n heading?: ReactNode;\n mode?: Mode;\n RowRenderer?: ElementType;\n tableLayout?: \"auto\" | \"fixed\";\n}\n\nexport const Table = kosComponent(\n ({\n CellRenderer = DefaultCellRenderer,\n children,\n className,\n data,\n dataKeys,\n headers,\n heading,\n mode = \"standard\",\n RowRenderer = DefaultRowRenderer,\n tableLayout,\n }: TableProps) => (\n <TableStyle className={className + ` ${mode}`} $tableLayout={tableLayout}>\n <table>\n <thead>\n {heading && (\n <tr className=\"heading\">\n <th colSpan={headers?.length ?? dataKeys?.length}>{heading}</th>\n </tr>\n )}\n\n {headers && (\n <tr\n className={\n \"headers\" +\n (mode === \"info\" && heading ? \" indent\" : \"\") +\n (heading ? \"\" : \" no-heading\")\n }\n >\n {headers?.map((header, index) => (\n <th key={index}>{header}</th>\n ))}\n </tr>\n )}\n </thead>\n\n <tbody>\n {data?.map((item, index) => (\n <tr\n key={index}\n className={`\n data\n ${mode === \"info\" && heading ? \" indent\" : \"\"}\n ${!heading ? \" no-heading\" : \"\"}\n `}\n >\n <RowRenderer\n CellRenderer={CellRenderer}\n dataKeys={dataKeys}\n item={item}\n />\n </tr>\n ))}\n </tbody>\n </table>\n {children && <div className=\"content\">{children}</div>}\n </TableStyle>\n )\n);\n","import { Table, type TableProps } from \"../table\";\n\nexport const InfoTable = (props: TableProps) => (\n <Table {...props} mode=\"info\" />\n);\n","import styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\nimport { InfoTable } from \"../../info-table\";\n\ninterface TableData {\n [key: string]: ReactNode;\n}\n\ninterface FrameBodyProps {\n keyList: string[];\n tableHead?: ReactNode;\n tableData: TableData[];\n tableHeaderList?: string[];\n tableLayout?: \"auto\" | \"fixed\";\n}\n\nconst FrameBodyContainer = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n padding: var(--ddk-component-frame-body-padding);\n width: 100%;\n box-sizing: border-box;\n`;\n\nexport const FrameBody = ({\n tableHead,\n tableData,\n keyList,\n tableHeaderList,\n tableLayout,\n}: FrameBodyProps) => (\n <FrameBodyContainer>\n <InfoTable\n heading={tableHead}\n dataKeys={keyList}\n data={tableData}\n headers={tableHeaderList}\n tableLayout={tableLayout}\n />\n </FrameBodyContainer>\n);\n","import styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\nimport { InfoCardHead } from \"../../../styles\";\n\nconst FrameContainerBlock = styled.div`\n box-sizing: var(--ddk-component-frame-container-box-sizing);\n border: var(--ddk-component-frame-container-border);\n border-radius: var(--ddk-component-frame-container-border-radius);\n background-color: var(--ddk-component-frame-container-background-color);\n overflow: hidden;\n`;\n\ninterface FrameContainerProps {\n name?: ReactNode;\n children: ReactNode;\n}\n\nconst InfoCardHeadStyle = styled(InfoCardHead)`\n box-sizing: border-box;\n padding: var(--ddk-component-frame-container-card-padding);\n max-height: 48px;\n`;\n\nexport const FrameContainer = ({ name, children }: FrameContainerProps) => (\n <FrameContainerBlock>\n <InfoCardHeadStyle>{name}</InfoCardHeadStyle>\n {children}\n </FrameContainerBlock>\n);\n","export function formatBytes(bytes, decimals = 2, space = true) {\n if (!+bytes) return \"0 Bytes\";\n\n const k = 1024;\n const dm = decimals < 0 ? 0 : decimals;\n const sizes = [\"Bytes\", \"KB\", \"MB\", \"GB\", \"TB\", \"PB\", \"EB\", \"ZB\", \"YB\"];\n\n const i = Math.floor(Math.log(bytes) / Math.log(k));\n\n return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))}${\n i === 0 ? \" \" : space ? \" \" : \"\"\n }${sizes[i]}`;\n}\n","export const getFillColor = (value: number) =>\n value <= 5\n ? \"var(--ddk-semantic-color-system-red)\"\n : value <= 20\n ? \"var(--ddk-semantic-color-system-orange)\"\n : \"var(--ddk-semantic-color-system-green)\";\n","import { useEffect, useState } from \"react\";\n\nexport interface KeyboardToggleProps<T> {\n defaultValue: T;\n key?: string;\n modifiers?: {\n altKey?: boolean;\n ctrlKey?: boolean;\n shiftKey?: boolean;\n };\n values: T[];\n}\n\nexport const useKeyboardToggle = <T>({\n defaultValue,\n key,\n modifiers,\n values,\n}: KeyboardToggleProps<T>) => {\n const [index, setIndex] = useState(values.indexOf(defaultValue));\n\n useEffect(() => {\n const keyDownHandler = (event: KeyboardEvent) => {\n const isKeyMatch = event.key === key;\n\n // prettier-ignore\n const isModifiersMatch =\n modifiers &&\n (modifiers.altKey === undefined || event.altKey === modifiers.altKey) &&\n (modifiers.ctrlKey === undefined || event.ctrlKey === modifiers.ctrlKey) &&\n (modifiers.shiftKey === undefined || event.shiftKey === modifiers.shiftKey);\n\n if (isKeyMatch && isModifiersMatch) setIndex((index + 1) % values.length);\n };\n\n window.addEventListener(\"keydown\", keyDownHandler);\n\n return () => {\n window.removeEventListener(\"keydown\", keyDownHandler);\n };\n }, [key, modifiers, values, index]);\n\n return values[index];\n};\n","import styled from \"@emotion/styled\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport {\n BodySmall,\n BodySmallInformation,\n Label,\n LabelInformation,\n} from \"../../styles\";\nimport { getFillColor } from \"../../tools\";\n\n// Function to determine the fill color of each bar\nconst getBarFillColor = (\n barIndex: number,\n value: number,\n size: \"small\" | \"large\"\n) => {\n const barCount = size === \"small\" ? 5 : 10;\n const barPercentage = 100 / barCount;\n const filledBars = Math.floor(value / barPercentage);\n const partiallyFilledPercentage = (value % barPercentage) * barCount; // Convert to percentage\n const fillColor = getFillColor(value);\n\n if (barIndex < filledBars) {\n return fillColor; // Fully filled bars\n } else if (barIndex === filledBars && partiallyFilledPercentage > 0) {\n // Apply linear-gradient for partially filled bar\n return `linear-gradient(to right, ${fillColor} ${partiallyFilledPercentage}%, #dfdede ${partiallyFilledPercentage}%)`;\n }\n return \"#dfdede\"; // Unfilled bars\n};\n\nconst FuelGaugeContainer = styled.div`\n display: flex;\n flex-direction: var(--ddk-component-fuel-guage-container-direction);\n gap: var(--ddk-component-fuel-guage-container-gap);\n width: 100%;\n`;\n\nconst FuelBarContainer = styled.div`\n display: flex;\n gap: var(--ddk-component-fuel-guage-bar-container-gap);\n`;\n\nconst FuelBar = styled.div<{ background: string; size: \"small\" | \"large\" }>`\n background: ${(props) => props.background};\n border-radius: var(--ddk-component-fuel-gauge-bar-border-radius);\n height: ${(props) =>\n props.size === \"small\"\n ? \"var(--ddk-component-fuel-gauge-bar-height-small)\"\n : \"var(--ddk-component-fuel-gauge-bar-height-large)\"};\n width: 100%;\n`;\n\nconst FillContainer = styled.div`\n display: flex;\n justify-content: space-between;\n`;\n\ninterface Props {\n color?: string;\n size: \"small\" | \"large\";\n value: number;\n showBarsOverride?: boolean;\n subtext?: string;\n subtextColor?: string;\n}\nexport const FuelGauge: React.FunctionComponent<Props> = ({\n color,\n size = \"small\",\n value,\n showBarsOverride = false,\n subtext,\n subtextColor,\n}) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n const isCompact = componentModeOverride === \"compact\";\n\n const showBars = componentModeOverride === \"standard\" || showBarsOverride;\n const bars = size === \"small\" ? 5 : 10;\n\n const FillText = size === \"small\" ? BodySmall : Label;\n const FillSubtext =\n size === \"small\" ? BodySmallInformation : LabelInformation;\n\n subtextColor = subtextColor ?? color;\n\n return (\n <FuelGaugeContainer>\n <FillContainer>\n <FillText\n style={{\n color: color ?? isCompact ? getFillColor(value) : undefined,\n }}\n >\n {value}%\n </FillText>\n {isCompact && subtext && (\n <FillSubtext style={{ color: subtextColor }}>{subtext}</FillSubtext>\n )}\n </FillContainer>\n {showBars && (\n <FuelBarContainer>\n {[...Array(bars)].map((_, i) => (\n <FuelBar\n size={size}\n key={i}\n background={getBarFillColor(i, value, size)}\n ></FuelBar>\n ))}\n </FuelBarContainer>\n )}\n </FuelGaugeContainer>\n );\n};\n","/** @jsxImportSource @emotion/react */\n\nimport { css } from \"@emotion/react\";\nimport { animated, useTransition } from \"@react-spring/web\";\nimport { ReactNode } from \"react\";\nimport { createPortal } from \"react-dom\";\nimport { ModalContent } from \"../modal/modal-content\";\n\nconst fullScreenModalStyles = css`\n display: flex;\n background-color: var(--ddk-component-modal-shade-background-color);\n flex-direction: column;\n justify-content: center;\n align-items: center;\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n\n & > .modal {\n animation: grow var(--ddk-component-fullScreenModal-transition-duration)\n var(--ddk-component-fullScreenModal-transition-timing-function);\n background-color: var(--ddk-component-fullScreenModal-background-color);\n height: 100%;\n width: 100%;\n }\n\n @keyframes grow {\n 0% {\n transform: scale(0.66);\n }\n 100% {\n transform: scale(1);\n }\n }\n`;\n\ninterface FullScreenModalProps {\n children: ReactNode;\n contain?: boolean;\n maximized?: boolean;\n onClose?: () => void;\n onClosed?: () => void;\n show?: boolean;\n}\n\nexport const FullScreenModal = ({\n children,\n contain = true,\n onClose,\n onClosed,\n show,\n}: FullScreenModalProps) => {\n const transition = useTransition(show, {\n initial: { opacity: 0 },\n from: { opacity: 0 },\n enter: { opacity: 1 },\n leave: { opacity: 0 },\n onDestroyed: onClosed,\n });\n\n return createPortal(\n transition(\n (style, item) =>\n item && (\n <animated.div\n css={fullScreenModalStyles}\n style={style}\n onPointerDown={onClose}\n >\n <div\n className={`modal`}\n onPointerDown={(event) => event.stopPropagation()}\n >\n <ModalContent contain={contain}>{children}</ModalContent>\n </div>\n </animated.div>\n )\n ),\n document.body\n );\n};\n","import styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\nimport { CloseButton } from \"../../close-button\";\n\nconst FullScreenHeaderContainer = styled.div`\n box-sizing: border-box;\n display: flex;\n gap: var(--ddk-component-modal-header-gap);\n justify-content: space-between;\n align-items: center;\n font-size: var(--ddk-component-modal-header-font-size);\n width: 100%;\n user-select: none;\n`;\n\nconst CloseButtonContainer = styled.div`\n padding-top: 1%;\n padding-right: 1%;\n z-index: 99;\n`;\n\nconst CloseButtonStyle = styled(CloseButton)`\n font-size: 48px;\n z-index: 99999;\n background-color: white;\n padding: 5%;\n`;\n\ninterface FullScreenHeaderProps {\n title?: ReactNode;\n onClose?: () => void;\n closeButtonLabel?: string;\n}\n\nexport const FullScreenHeader = ({\n onClose,\n title,\n closeButtonLabel,\n}: FullScreenHeaderProps) => (\n <FullScreenHeaderContainer>\n <span></span>\n {title}\n <CloseButtonContainer>\n <CloseButtonStyle onPointerDown={onClose} label={closeButtonLabel} />\n </CloseButtonContainer>\n </FullScreenHeaderContainer>\n);\n","import styled from \"@emotion/styled\";\nimport { kosComponent } from \"@kosdev-code/kos-ui-sdk\";\n\ninterface ContainerProps {\n noData?: boolean;\n}\n\nconst Container = styled.div<ContainerProps>`\n display: grid;\n grid-template-columns: ${(props) => (props.noData ? \"1fr\" : \"1fr 1fr 1fr\")};\n gap: 12px;\n`;\n\ninterface GridItemRendererProps<T> {\n item: T;\n}\n\nexport interface GridItemRenderer<T> {\n ({ item }: GridItemRendererProps<T>): JSX.Element;\n}\n\nexport interface GridProps<T> {\n ItemRenderer: GridItemRenderer<T>;\n MoreItemsRenderer: React.ElementType;\n NoDataItemRenderer: React.ElementType;\n items?: T[];\n maxNumberOfItems: number;\n}\n\nexport const Grid = kosComponent(\n <T,>({\n ItemRenderer,\n items,\n maxNumberOfItems,\n MoreItemsRenderer,\n NoDataItemRenderer,\n }: GridProps<T>) => (\n <Container noData={!items || !items.length}>\n {items && items.length ? (\n (items.length > maxNumberOfItems\n ? items.slice(0, maxNumberOfItems - 1)\n : items\n ).map((item, index) => <ItemRenderer key={index} item={item} />)\n ) : (\n <NoDataItemRenderer />\n )}\n\n {items && items?.length > maxNumberOfItems && <MoreItemsRenderer />}\n </Container>\n )\n);\n","import styled from \"@emotion/styled\";\nimport { useKosTranslation } from \"@kosdev-code/kos-ui-sdk\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { Card, type CardProps } from \"../../styles\";\n\nexport const AvailableText = styled.div`\n color: var(--ddk-component-info-card-color-default);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: var(--ddk-component-info-card-font-size);\n font-style: normal;\n font-weight: var(--ddk-component-info-card-font-weight);\n letter-spacing: 0.64px;\n line-height: 135%;\n`;\n\nexport const UnavailableText = styled.div`\n color: var(--ddk-component-info-card-color-disabled);\n font-family: var(--ddk-component-root-font-family-default);\n font-size: var(--ddk-component-info-card-font-size);\n font-style: normal;\n font-weight: var(--ddk-component-info-card-font-weight);\n letter-spacing: -0.225px;\n line-height: 135%;\n`;\n\nconst CardFlexStart = styled(Card)`\n justify-content: flex-start;\n`;\n\ninterface InfoProp extends CardProps {\n label: string;\n value: string | undefined;\n unavailableText: string;\n}\n\nexport const InfoCard = ({\n label,\n unavailableText,\n value,\n ...props\n}: InfoProp) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <Card collapse={componentModeOverride === \"compact\"} {...props}>\n {label}\n {componentModeOverride === \"compact\" ? (\n <CardFlexStart>\n {value ? (\n <AvailableText>{value}</AvailableText>\n ) : (\n <UnavailableText>{unavailableText}</UnavailableText>\n )}\n </CardFlexStart>\n ) : value ? (\n <AvailableText>{value}</AvailableText>\n ) : (\n <UnavailableText>{unavailableText}</UnavailableText>\n )}\n </Card>\n );\n};\n\nexport const InfoCardContainer = (props: Omit<InfoProp, \"unavailableText\">) => {\n const { t } = useKosTranslation(\"common\");\n\n return <InfoCard unavailableText={t(\"unavailable\")} {...props} />;\n};\n","import { ErrorIconWithBackground } from \"@kosdev-code/kos-ddk-styles\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { BodyLarge, Card, type CardProps } from \"../../styles\";\nimport styled from \"@emotion/styled\";\nimport type { ReactNode } from \"react\";\n\nconst InfoMessageCard = styled(Card)`\n background-color: var(--ddk-semantic-color-system-orange-light);\n border-color: var(--ddk-semantic-color-system-orange);\n gap: var(--ddk-generic-padding-medium);\n padding: var(--ddk-generic-padding-large) var(--ddk-generic-padding-x-large);\n display: flex;\n align-items: flex-start;\n min-height: initial;\n`;\n\nconst InfoMessageIcon = styled(ErrorIconWithBackground)`\n background-color: var(--ddk-semantic-color-system-orange);\n box-sizing: border-box;\n width: var(--ddk-component-info-message-icon-width);\n height: var(--ddk-component-info-message-icon-height);\n padding: var(--ddk-component-info-message-icon-padding);\n`;\n\nconst Message = styled(BodyLarge)`\n color: var(--ddk-semantic-color-system-orange);\n flex: 1;\n`;\n\ninterface InfoProp extends CardProps {\n children: ReactNode;\n}\n\nexport const InfoMessage = ({ children, ...props }: InfoProp) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <InfoMessageCard {...props}>\n <InfoMessageIcon />\n <Message>{children}</Message>\n </InfoMessageCard>\n );\n};\n","/*!\n * \n * react-simple-keyboard v3.8.205\n * https://github.com/hodgef/react-simple-keyboard\n *\n * Copyright (c) Francisco Hodge (https://github.com/hodgef) and project contributors.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e(require(\"react\")):\"function\"==typeof define&&define.amd?define([\"react\"],e):\"object\"==typeof exports?exports.ReactSimpleKeyboard=e(require(\"react\")):t.ReactSimpleKeyboard=e(t.React)}(this,(function(t){return function(){var e={981:function(){\"undefined\"==typeof Element||\"remove\"in Element.prototype||(Element.prototype.remove=function(){this.parentNode&&this.parentNode.removeChild(this)}),\"undefined\"!=typeof self&&\"document\"in self&&((!(\"classList\"in document.createElement(\"_\"))||document.createElementNS&&!(\"classList\"in document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\")))&&function(t){\"use strict\";if(\"Element\"in t){var e=\"classList\",n=\"prototype\",r=t.Element[n],o=Object,i=String[n].trim||function(){return this.replace(/^\\s+|\\s+$/g,\"\")},a=Array[n].indexOf||function(t){for(var e=0,n=this.length;e<n;e++)if(e in this&&this[e]===t)return e;return-1},s=function(t,e){this.name=t,this.code=DOMException[t],this.message=e},u=function(t,e){if(\"\"===e)throw new s(\"SYNTAX_ERR\",\"The token must not be empty.\");if(/\\s/.test(e))throw new s(\"INVALID_CHARACTER_ERR\",\"The token must not contain space characters.\");return a.call(t,e)},c=function(t){for(var e=i.call(t.getAttribute(\"class\")||\"\"),n=e?e.split(/\\s+/):[],r=0,o=n.length;r<o;r++)this.push(n[r]);this._updateClassName=function(){t.setAttribute(\"class\",this.toString())}},l=c[n]=[],f=function(){return new c(this)};if(s[n]=Error[n],l.item=function(t){return this[t]||null},l.contains=function(t){return~u(this,t+\"\")},l.add=function(){var t,e=arguments,n=0,r=e.length,o=!1;do{~u(this,t=e[n]+\"\")||(this.push(t),o=!0)}while(++n<r);o&&this._updateClassName()},l.remove=function(){var t,e,n=arguments,r=0,o=n.length,i=!1;do{for(e=u(this,t=n[r]+\"\");~e;)this.splice(e,1),i=!0,e=u(this,t)}while(++r<o);i&&this._updateClassName()},l.toggle=function(t,e){var n=this.contains(t),r=n?!0!==e&&\"remove\":!1!==e&&\"add\";return r&&this[r](t),!0===e||!1===e?e:!n},l.replace=function(t,e){var n=u(t+\"\");~n&&(this.splice(n,1,e),this._updateClassName())},l.toString=function(){return this.join(\" \")},o.defineProperty){var p={get:f,enumerable:!0,configurable:!0};try{o.defineProperty(r,e,p)}catch(t){void 0!==t.number&&-2146823252!==t.number||(p.enumerable=!1,o.defineProperty(r,e,p))}}else o[n].__defineGetter__&&r.__defineGetter__(e,f)}}(self),function(){\"use strict\";var t=document.createElement(\"_\");if(t.classList.add(\"c1\",\"c2\"),!t.classList.contains(\"c2\")){var e=function(t){var e=DOMTokenList.prototype[t];DOMTokenList.prototype[t]=function(t){var n,r=arguments.length;for(n=0;n<r;n++)t=arguments[n],e.call(this,t)}};e(\"add\"),e(\"remove\")}if(t.classList.toggle(\"c3\",!1),t.classList.contains(\"c3\")){var n=DOMTokenList.prototype.toggle;DOMTokenList.prototype.toggle=function(t,e){return 1 in arguments&&!this.contains(t)==!e?e:n.call(this,t)}}\"replace\"in document.createElement(\"_\").classList||(DOMTokenList.prototype.replace=function(t,e){var n=this.toString().split(\" \"),r=n.indexOf(t+\"\");~r&&(n=n.slice(r),this.remove.apply(this,n),this.add(e),this.add.apply(this,n.slice(1)))}),t=null}())},548:function(t){t.exports=function(){\"use strict\";var t={9306:function(t,e,n){var r=n(4901),o=n(6823),i=TypeError;t.exports=function(t){if(r(t))return t;throw new i(o(t)+\" is not a function\")}},5548:function(t,e,n){var r=n(3517),o=n(6823),i=TypeError;t.exports=function(t){if(r(t))return t;throw new i(o(t)+\" is not a constructor\")}},3506:function(t,e,n){var r=n(3925),o=String,i=TypeError;t.exports=function(t){if(r(t))return t;throw new i(\"Can't set \"+o(t)+\" as a prototype\")}},6469:function(t,e,n){var r=n(8227),o=n(2360),i=n(4913).f,a=r(\"unscopables\"),s=Array.prototype;void 0===s[a]&&i(s,a,{configurable:!0,value:o(null)}),t.exports=function(t){s[a][t]=!0}},7829:function(t,e,n){var r=n(8183).charAt;t.exports=function(t,e,n){return e+(n&&r(t,e).length||1)}},8551:function(t,e,n){var r=n(34),o=String,i=TypeError;t.exports=function(t){if(r(t))return t;throw new i(o(t)+\" is not an object\")}},235:function(t,e,n){var r=n(9213).forEach,o=n(4598)(\"forEach\");t.exports=o?[].forEach:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}},7916:function(t,e,n){var r=n(6080),o=n(9565),i=n(8981),a=n(6319),s=n(4209),u=n(3517),c=n(6198),l=n(4659),f=n(4527),p=n(81),d=n(851),h=n(9539),v=Array;t.exports=function(t){var e=u(this),n=arguments.length,y=n>1?arguments[1]:void 0,g=void 0!==y;g&&(y=r(y,n>2?arguments[2]:void 0));var m,b,w,x,O,E,S=i(t),k=d(S),P=0;if(!k||this===v&&s(k))for(m=c(S),b=e?new this(m):v(m);m>P;P++)E=g?y(S[P],P):S[P],l(b,P,E);else for(b=e?new this:[],O=(x=p(S,k)).next;!(w=o(O,x)).done;P++){E=g?a(x,y,[w.value,P],!0):w.value;try{l(b,P,E)}catch(t){h(x,\"throw\",t)}}return f(b,P),b}},9617:function(t,e,n){var r=n(5397),o=n(5610),i=n(6198),a=function(t){return function(e,n,a){var s=r(e),u=i(s);if(0===u)return!t&&-1;var c,l=o(a,u);if(t&&n!=n){for(;u>l;)if((c=s[l++])!=c)return!0}else for(;u>l;l++)if((t||l in s)&&s[l]===n)return t||l||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},9213:function(t,e,n){var r=n(6080),o=n(7055),i=n(8981),a=n(6198),s=n(1469),u=n(4659),c=function(t){var e=1===t,n=2===t,c=3===t,l=4===t,f=6===t,p=7===t,d=5===t||f;return function(h,v,y){for(var g,m,b=i(h),w=o(b),x=a(w),O=r(v,y),E=0,S=0,k=e?s(h,x):n||p?s(h,0):void 0;x>E;E++)if((d||E in w)&&(m=O(g=w[E],E,b),t))if(e)u(k,E,m);else if(m)switch(t){case 3:return!0;case 5:return g;case 6:return E;case 2:u(k,S++,g)}else switch(t){case 4:return!1;case 7:u(k,S++,g)}return f?-1:c||l?l:k}};t.exports={forEach:c(0),map:c(1),filter:c(2),some:c(3),every:c(4),find:c(5),findIndex:c(6),filterReject:c(7)}},597:function(t,e,n){var r=n(9039),o=n(8227),i=n(9519),a=o(\"species\");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},4598:function(t,e,n){var r=n(9039);t.exports=function(t,e){var n=[][t];return!!n&&r((function(){n.call(null,e||function(){return 1},1)}))}},926:function(t,e,n){var r=n(9306),o=n(8981),i=n(7055),a=n(6198),s=TypeError,u=\"Reduce of empty array with no initial value\",c=function(t){return function(e,n,c,l){var f=o(e),p=i(f),d=a(f);if(r(n),0===d&&c<2)throw new s(u);var h=t?d-1:0,v=t?-1:1;if(c<2)for(;;){if(h in p){l=p[h],h+=v;break}if(h+=v,t?h<0:d<=h)throw new s(u)}for(;t?h>=0:d>h;h+=v)h in p&&(l=n(l,p[h],h,f));return l}};t.exports={left:c(!1),right:c(!0)}},4527:function(t,e,n){var r=n(3724),o=n(4376),i=TypeError,a=Object.getOwnPropertyDescriptor,s=r&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],\"length\",{writable:!1}).length=1}catch(t){return t instanceof TypeError}}();t.exports=s?function(t,e){if(o(t)&&!a(t,\"length\").writable)throw new i(\"Cannot set read only .length\");return t.length=e}:function(t,e){return t.length=e}},7680:function(t,e,n){var r=n(9504);t.exports=r([].slice)},4488:function(t,e,n){var r=n(7680),o=Math.floor,i=function(t,e){var n=t.length;if(n<8)for(var a,s,u=1;u<n;){for(s=u,a=t[u];s&&e(t[s-1],a)>0;)t[s]=t[--s];s!==u++&&(t[s]=a)}else for(var c=o(n/2),l=i(r(t,0,c),e),f=i(r(t,c),e),p=l.length,d=f.length,h=0,v=0;h<p||v<d;)t[h+v]=h<p&&v<d?e(l[h],f[v])<=0?l[h++]:f[v++]:h<p?l[h++]:f[v++];return t};t.exports=i},7433:function(t,e,n){var r=n(4376),o=n(3517),i=n(34),a=n(8227)(\"species\"),s=Array;t.exports=function(t){var e;return r(t)&&(e=t.constructor,(o(e)&&(e===s||r(e.prototype))||i(e)&&null===(e=e[a]))&&(e=void 0)),void 0===e?s:e}},1469:function(t,e,n){var r=n(7433);t.exports=function(t,e){return new(r(t))(0===e?0:e)}},6319:function(t,e,n){var r=n(8551),o=n(9539);t.exports=function(t,e,n,i){try{return i?e(r(n)[0],n[1]):e(n)}catch(e){o(t,\"throw\",e)}}},4428:function(t,e,n){var r=n(8227)(\"iterator\"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(t){}t.exports=function(t,e){try{if(!e&&!o)return!1}catch(t){return!1}var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(t){}return n}},2195:function(t,e,n){var r=n(9504),o=r({}.toString),i=r(\"\".slice);t.exports=function(t){return i(o(t),8,-1)}},6955:function(t,e,n){var r=n(2140),o=n(4901),i=n(2195),a=n(8227)(\"toStringTag\"),s=Object,u=\"Arguments\"===i(function(){return arguments}());t.exports=r?i:function(t){var e,n,r;return void 0===t?\"Undefined\":null===t?\"Null\":\"string\"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=s(t),a))?n:u?i(e):\"Object\"===(r=i(e))&&o(e.callee)?\"Arguments\":r}},7740:function(t,e,n){var r=n(9297),o=n(5031),i=n(7347),a=n(4913);t.exports=function(t,e,n){for(var s=o(e),u=a.f,c=i.f,l=0;l<s.length;l++){var f=s[l];r(t,f)||n&&r(n,f)||u(t,f,c(e,f))}}},1436:function(t,e,n){var r=n(8227)(\"match\");t.exports=function(t){var e=/./;try{\"/./\"[t](e)}catch(n){try{return e[r]=!1,\"/./\"[t](e)}catch(t){}}return!1}},2211:function(t,e,n){var r=n(9039);t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},2529:function(t){t.exports=function(t,e){return{value:t,done:e}}},6699:function(t,e,n){var r=n(3724),o=n(4913),i=n(6980);t.exports=r?function(t,e,n){return o.f(t,e,i(1,n))}:function(t,e,n){return t[e]=n,t}},6980:function(t){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},4659:function(t,e,n){var r=n(3724),o=n(4913),i=n(6980);t.exports=function(t,e,n){r?o.f(t,e,i(0,n)):t[e]=n}},3640:function(t,e,n){var r=n(8551),o=n(4270),i=TypeError;t.exports=function(t){if(r(this),\"string\"===t||\"default\"===t)t=\"string\";else if(\"number\"!==t)throw new i(\"Incorrect hint\");return o(this,t)}},2106:function(t,e,n){var r=n(283),o=n(4913);t.exports=function(t,e,n){return n.get&&r(n.get,e,{getter:!0}),n.set&&r(n.set,e,{setter:!0}),o.f(t,e,n)}},6840:function(t,e,n){var r=n(4901),o=n(4913),i=n(283),a=n(9433);t.exports=function(t,e,n,s){s||(s={});var u=s.enumerable,c=void 0!==s.name?s.name:e;if(r(n)&&i(n,c,s),s.global)u?t[e]=n:a(e,n);else{try{s.unsafe?t[e]&&(u=!0):delete t[e]}catch(t){}u?t[e]=n:o.f(t,e,{value:n,enumerable:!1,configurable:!s.nonConfigurable,writable:!s.nonWritable})}return t}},9433:function(t,e,n){var r=n(4576),o=Object.defineProperty;t.exports=function(t,e){try{o(r,t,{value:e,configurable:!0,writable:!0})}catch(n){r[t]=e}return e}},4606:function(t,e,n){var r=n(6823),o=TypeError;t.exports=function(t,e){if(!delete t[e])throw new o(\"Cannot delete property \"+r(e)+\" of \"+r(t))}},3724:function(t,e,n){var r=n(9039);t.exports=!r((function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]}))},4055:function(t,e,n){var r=n(4576),o=n(34),i=r.document,a=o(i)&&o(i.createElement);t.exports=function(t){return a?i.createElement(t):{}}},6837:function(t){var e=TypeError;t.exports=function(t){if(t>9007199254740991)throw new e(\"Maximum allowed index exceeded\");return t}},7400:function(t){t.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},9296:function(t,e,n){var r=n(4055)(\"span\").classList,o=r&&r.constructor&&r.constructor.prototype;t.exports=o===Object.prototype?void 0:o},8727:function(t){t.exports=[\"constructor\",\"hasOwnProperty\",\"isPrototypeOf\",\"propertyIsEnumerable\",\"toLocaleString\",\"toString\",\"valueOf\"]},3709:function(t,e,n){var r=n(2839).match(/firefox\\/(\\d+)/i);t.exports=!!r&&+r[1]},3763:function(t,e,n){var r=n(2839);t.exports=/MSIE|Trident/.test(r)},6193:function(t,e,n){var r=n(4215);t.exports=\"NODE\"===r},2839:function(t,e,n){var r=n(4576).navigator,o=r&&r.userAgent;t.exports=o?String(o):\"\"},9519:function(t,e,n){var r,o,i=n(4576),a=n(2839),s=i.process,u=i.Deno,c=s&&s.versions||u&&u.version,l=c&&c.v8;l&&(o=(r=l.split(\".\"))[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(!(r=a.match(/Edge\\/(\\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\\/(\\d+)/))&&(o=+r[1]),t.exports=o},3607:function(t,e,n){var r=n(2839).match(/AppleWebKit\\/(\\d+)\\./);t.exports=!!r&&+r[1]},4215:function(t,e,n){var r=n(4576),o=n(2839),i=n(2195),a=function(t){return o.slice(0,t.length)===t};t.exports=a(\"Bun/\")?\"BUN\":a(\"Cloudflare-Workers\")?\"CLOUDFLARE\":a(\"Deno/\")?\"DENO\":a(\"Node.js/\")?\"NODE\":r.Bun&&\"string\"==typeof Bun.version?\"BUN\":r.Deno&&\"object\"==typeof Deno.version?\"DENO\":\"process\"===i(r.process)?\"NODE\":r.window&&r.document?\"BROWSER\":\"REST\"},6518:function(t,e,n){var r=n(4576),o=n(7347).f,i=n(6699),a=n(6840),s=n(9433),u=n(7740),c=n(2796);t.exports=function(t,e){var n,l,f,p,d,h=t.target,v=t.global,y=t.stat;if(n=v?r:y?r[h]||s(h,{}):r[h]&&r[h].prototype)for(l in e){if(p=e[l],f=t.dontCallGetSet?(d=o(n,l))&&d.value:n[l],!c(v?l:h+(y?\".\":\"#\")+l,t.forced)&&void 0!==f){if(typeof p==typeof f)continue;u(p,f)}(t.sham||f&&f.sham)&&i(p,\"sham\",!0),a(n,l,p,t)}}},9039:function(t){t.exports=function(t){try{return!!t()}catch(t){return!0}}},9228:function(t,e,n){n(7495);var r=n(9565),o=n(6840),i=n(7323),a=n(9039),s=n(8227),u=n(6699),c=s(\"species\"),l=RegExp.prototype;t.exports=function(t,e,n,f){var p=s(t),d=!a((function(){var e={};return e[p]=function(){return 7},7!==\"\"[t](e)})),h=d&&!a((function(){var e=!1,n=/a/;if(\"split\"===t){var r={};r[c]=function(){return n},(n={constructor:r,flags:\"\"})[p]=/./[p]}return n.exec=function(){return e=!0,null},n[p](\"\"),!e}));if(!d||!h||n){var v=/./[p],y=e(p,\"\"[t],(function(t,e,n,o,a){var s=e.exec;return s===i||s===l.exec?d&&!a?{done:!0,value:r(v,e,n,o)}:{done:!0,value:r(t,n,e,o)}:{done:!1}}));o(String.prototype,t,y[0]),o(l,p,y[1])}f&&u(l[p],\"sham\",!0)}},8745:function(t,e,n){var r=n(616),o=Function.prototype,i=o.apply,a=o.call;t.exports=\"object\"==typeof Reflect&&Reflect.apply||(r?a.bind(i):function(){return a.apply(i,arguments)})},6080:function(t,e,n){var r=n(7476),o=n(9306),i=n(616),a=r(r.bind);t.exports=function(t,e){return o(t),void 0===e?t:i?a(t,e):function(){return t.apply(e,arguments)}}},616:function(t,e,n){var r=n(9039);t.exports=!r((function(){var t=function(){}.bind();return\"function\"!=typeof t||t.hasOwnProperty(\"prototype\")}))},566:function(t,e,n){var r=n(9504),o=n(9306),i=n(34),a=n(9297),s=n(7680),u=n(616),c=Function,l=r([].concat),f=r([].join),p={};t.exports=u?c.bind:function(t){var e=o(this),n=e.prototype,r=s(arguments,1),u=function(){var n=l(r,s(arguments));return this instanceof u?function(t,e,n){if(!a(p,e)){for(var r=[],o=0;o<e;o++)r[o]=\"a[\"+o+\"]\";p[e]=c(\"C,a\",\"return new C(\"+f(r,\",\")+\")\")}return p[e](t,n)}(e,n.length,n):e.apply(t,n)};return i(n)&&(u.prototype=n),u}},9565:function(t,e,n){var r=n(616),o=Function.prototype.call;t.exports=r?o.bind(o):function(){return o.apply(o,arguments)}},350:function(t,e,n){var r=n(3724),o=n(9297),i=Function.prototype,a=r&&Object.getOwnPropertyDescriptor,s=o(i,\"name\"),u=s&&\"something\"===function(){}.name,c=s&&(!r||r&&a(i,\"name\").configurable);t.exports={EXISTS:s,PROPER:u,CONFIGURABLE:c}},6706:function(t,e,n){var r=n(9504),o=n(9306);t.exports=function(t,e,n){try{return r(o(Object.getOwnPropertyDescriptor(t,e)[n]))}catch(t){}}},7476:function(t,e,n){var r=n(2195),o=n(9504);t.exports=function(t){if(\"Function\"===r(t))return o(t)}},9504:function(t,e,n){var r=n(616),o=Function.prototype,i=o.call,a=r&&o.bind.bind(i,i);t.exports=r?a:function(t){return function(){return i.apply(t,arguments)}}},7751:function(t,e,n){var r=n(4576),o=n(4901);t.exports=function(t,e){return arguments.length<2?(n=r[t],o(n)?n:void 0):r[t]&&r[t][e];var n}},851:function(t,e,n){var r=n(6955),o=n(5966),i=n(4117),a=n(6269),s=n(8227)(\"iterator\");t.exports=function(t){if(!i(t))return o(t,s)||o(t,\"@@iterator\")||a[r(t)]}},81:function(t,e,n){var r=n(9565),o=n(9306),i=n(8551),a=n(6823),s=n(851),u=TypeError;t.exports=function(t,e){var n=arguments.length<2?s(t):e;if(o(n))return i(r(n,t));throw new u(a(t)+\" is not iterable\")}},5966:function(t,e,n){var r=n(9306),o=n(4117);t.exports=function(t,e){var n=t[e];return o(n)?void 0:r(n)}},2478:function(t,e,n){var r=n(9504),o=n(8981),i=Math.floor,a=r(\"\".charAt),s=r(\"\".replace),u=r(\"\".slice),c=/\\$([$&'`]|\\d{1,2}|<[^>]*>)/g,l=/\\$([$&'`]|\\d{1,2})/g;t.exports=function(t,e,n,r,f,p){var d=n+t.length,h=r.length,v=l;return void 0!==f&&(f=o(f),v=c),s(p,v,(function(o,s){var c;switch(a(s,0)){case\"$\":return\"$\";case\"&\":return t;case\"`\":return u(e,0,n);case\"'\":return u(e,d);case\"<\":c=f[u(s,1,-1)];break;default:var l=+s;if(0===l)return o;if(l>h){var p=i(l/10);return 0===p?o:p<=h?void 0===r[p-1]?a(s,1):r[p-1]+a(s,1):o}c=r[l-1]}return void 0===c?\"\":c}))}},4576:function(t,e,n){var r=function(t){return t&&t.Math===Math&&t};t.exports=r(\"object\"==typeof globalThis&&globalThis)||r(\"object\"==typeof window&&window)||r(\"object\"==typeof self&&self)||r(\"object\"==typeof n.g&&n.g)||r(\"object\"==typeof this&&this)||function(){return this}()||Function(\"return this\")()},9297:function(t,e,n){var r=n(9504),o=n(8981),i=r({}.hasOwnProperty);t.exports=Object.hasOwn||function(t,e){return i(o(t),e)}},421:function(t){t.exports={}},397:function(t,e,n){var r=n(7751);t.exports=r(\"document\",\"documentElement\")},5917:function(t,e,n){var r=n(3724),o=n(9039),i=n(4055);t.exports=!r&&!o((function(){return 7!==Object.defineProperty(i(\"div\"),\"a\",{get:function(){return 7}}).a}))},7055:function(t,e,n){var r=n(9504),o=n(9039),i=n(2195),a=Object,s=r(\"\".split);t.exports=o((function(){return!a(\"z\").propertyIsEnumerable(0)}))?function(t){return\"String\"===i(t)?s(t,\"\"):a(t)}:a},3167:function(t,e,n){var r=n(4901),o=n(34),i=n(2967);t.exports=function(t,e,n){var a,s;return i&&r(a=e.constructor)&&a!==n&&o(s=a.prototype)&&s!==n.prototype&&i(t,s),t}},3706:function(t,e,n){var r=n(9504),o=n(4901),i=n(7629),a=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(t){return a(t)}),t.exports=i.inspectSource},1181:function(t,e,n){var r,o,i,a=n(8622),s=n(4576),u=n(34),c=n(6699),l=n(9297),f=n(7629),p=n(6119),d=n(421),h=\"Object already initialized\",v=s.TypeError,y=s.WeakMap;if(a||f.state){var g=f.state||(f.state=new y);g.get=g.get,g.has=g.has,g.set=g.set,r=function(t,e){if(g.has(t))throw new v(h);return e.facade=t,g.set(t,e),e},o=function(t){return g.get(t)||{}},i=function(t){return g.has(t)}}else{var m=p(\"state\");d[m]=!0,r=function(t,e){if(l(t,m))throw new v(h);return e.facade=t,c(t,m,e),e},o=function(t){return l(t,m)?t[m]:{}},i=function(t){return l(t,m)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!u(e)||(n=o(e)).type!==t)throw new v(\"Incompatible receiver, \"+t+\" required\");return n}}}},4209:function(t,e,n){var r=n(8227),o=n(6269),i=r(\"iterator\"),a=Array.prototype;t.exports=function(t){return void 0!==t&&(o.Array===t||a[i]===t)}},4376:function(t,e,n){var r=n(2195);t.exports=Array.isArray||function(t){return\"Array\"===r(t)}},4901:function(t){var e=\"object\"==typeof document&&document.all;t.exports=void 0===e&&void 0!==e?function(t){return\"function\"==typeof t||t===e}:function(t){return\"function\"==typeof t}},3517:function(t,e,n){var r=n(9504),o=n(9039),i=n(4901),a=n(6955),s=n(7751),u=n(3706),c=function(){},l=s(\"Reflect\",\"construct\"),f=/^\\s*(?:class|function)\\b/,p=r(f.exec),d=!f.test(c),h=function(t){if(!i(t))return!1;try{return l(c,[],t),!0}catch(t){return!1}},v=function(t){if(!i(t))return!1;switch(a(t)){case\"AsyncFunction\":case\"GeneratorFunction\":case\"AsyncGeneratorFunction\":return!1}try{return d||!!p(f,u(t))}catch(t){return!0}};v.sham=!0,t.exports=!l||o((function(){var t;return h(h.call)||!h(Object)||!h((function(){t=!0}))||t}))?v:h},2796:function(t,e,n){var r=n(9039),o=n(4901),i=/#|\\.prototype\\./,a=function(t,e){var n=u[s(t)];return n===l||n!==c&&(o(e)?r(e):!!e)},s=a.normalize=function(t){return String(t).replace(i,\".\").toLowerCase()},u=a.data={},c=a.NATIVE=\"N\",l=a.POLYFILL=\"P\";t.exports=a},2087:function(t,e,n){var r=n(34),o=Math.floor;t.exports=Number.isInteger||function(t){return!r(t)&&isFinite(t)&&o(t)===t}},4117:function(t){t.exports=function(t){return null==t}},34:function(t,e,n){var r=n(4901);t.exports=function(t){return\"object\"==typeof t?null!==t:r(t)}},3925:function(t,e,n){var r=n(34);t.exports=function(t){return r(t)||null===t}},6395:function(t){t.exports=!1},5810:function(t,e,n){var r=n(34),o=n(1181).get;t.exports=function(t){if(!r(t))return!1;var e=o(t);return!!e&&\"RawJSON\"===e.type}},788:function(t,e,n){var r=n(34),o=n(2195),i=n(8227)(\"match\");t.exports=function(t){var e;return r(t)&&(void 0!==(e=t[i])?!!e:\"RegExp\"===o(t))}},757:function(t,e,n){var r=n(7751),o=n(4901),i=n(1625),a=n(7040),s=Object;t.exports=a?function(t){return\"symbol\"==typeof t}:function(t){var e=r(\"Symbol\");return o(e)&&i(e.prototype,s(t))}},9539:function(t,e,n){var r=n(9565),o=n(8551),i=n(5966);t.exports=function(t,e,n){var a,s;o(t);try{if(!(a=i(t,\"return\"))){if(\"throw\"===e)throw n;return n}a=r(a,t)}catch(t){s=!0,a=t}if(\"throw\"===e)throw n;if(s)throw a;return o(a),n}},3994:function(t,e,n){var r=n(7657).IteratorPrototype,o=n(2360),i=n(6980),a=n(687),s=n(6269),u=function(){return this};t.exports=function(t,e,n,c){var l=e+\" Iterator\";return t.prototype=o(r,{next:i(+!c,n)}),a(t,l,!1,!0),s[l]=u,t}},1088:function(t,e,n){var r=n(6518),o=n(9565),i=n(6395),a=n(350),s=n(4901),u=n(3994),c=n(2787),l=n(2967),f=n(687),p=n(6699),d=n(6840),h=n(8227),v=n(6269),y=n(7657),g=a.PROPER,m=a.CONFIGURABLE,b=y.IteratorPrototype,w=y.BUGGY_SAFARI_ITERATORS,x=h(\"iterator\"),O=\"keys\",E=\"values\",S=\"entries\",k=function(){return this};t.exports=function(t,e,n,a,h,y,P){u(n,e,a);var I,C,A,M=function(t){if(t===h&&R)return R;if(!w&&t&&t in N)return N[t];switch(t){case O:case E:case S:return function(){return new n(this,t)}}return function(){return new n(this)}},D=e+\" Iterator\",T=!1,N=t.prototype,j=N[x]||N[\"@@iterator\"]||h&&N[h],R=!w&&j||M(h),L=\"Array\"===e&&N.entries||j;if(L&&(I=c(L.call(new t)))!==Object.prototype&&I.next&&(i||c(I)===b||(l?l(I,b):s(I[x])||d(I,x,k)),f(I,D,!0,!0),i&&(v[D]=k)),g&&h===E&&j&&j.name!==E&&(!i&&m?p(N,\"name\",E):(T=!0,R=function(){return o(j,this)})),h)if(C={values:M(E),keys:y?R:M(O),entries:M(S)},P)for(A in C)(w||T||!(A in N))&&d(N,A,C[A]);else r({target:e,proto:!0,forced:w||T},C);return i&&!P||N[x]===R||d(N,x,R,{name:h}),v[e]=R,C}},7657:function(t,e,n){var r,o,i,a=n(9039),s=n(4901),u=n(34),c=n(2360),l=n(2787),f=n(6840),p=n(8227),d=n(6395),h=p(\"iterator\"),v=!1;[].keys&&(\"next\"in(i=[].keys())?(o=l(l(i)))!==Object.prototype&&(r=o):v=!0),!u(r)||a((function(){var t={};return r[h].call(t)!==t}))?r={}:d&&(r=c(r)),s(r[h])||f(r,h,(function(){return this})),t.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:v}},6269:function(t){t.exports={}},6198:function(t,e,n){var r=n(8014);t.exports=function(t){return r(t.length)}},283:function(t,e,n){var r=n(9504),o=n(9039),i=n(4901),a=n(9297),s=n(3724),u=n(350).CONFIGURABLE,c=n(3706),l=n(1181),f=l.enforce,p=l.get,d=String,h=Object.defineProperty,v=r(\"\".slice),y=r(\"\".replace),g=r([].join),m=s&&!o((function(){return 8!==h((function(){}),\"length\",{value:8}).length})),b=String(String).split(\"String\"),w=t.exports=function(t,e,n){\"Symbol(\"===v(d(e),0,7)&&(e=\"[\"+y(d(e),/^Symbol\\(([^)]*)\\).*$/,\"$1\")+\"]\"),n&&n.getter&&(e=\"get \"+e),n&&n.setter&&(e=\"set \"+e),(!a(t,\"name\")||u&&t.name!==e)&&(s?h(t,\"name\",{value:e,configurable:!0}):t.name=e),m&&n&&a(n,\"arity\")&&t.length!==n.arity&&h(t,\"length\",{value:n.arity});try{n&&a(n,\"constructor\")&&n.constructor?s&&h(t,\"prototype\",{writable:!1}):t.prototype&&(t.prototype=void 0)}catch(t){}var r=f(t);return a(r,\"source\")||(r.source=g(b,\"string\"==typeof e?e:\"\")),t};Function.prototype.toString=w((function(){return i(this)&&p(this).source||c(this)}),\"toString\")},741:function(t){var e=Math.ceil,n=Math.floor;t.exports=Math.trunc||function(t){var r=+t;return(r>0?n:e)(r)}},7819:function(t,e,n){var r=n(9039);t.exports=!r((function(){var t=\"9007199254740993\",e=JSON.rawJSON(t);return!JSON.isRawJSON(e)||JSON.stringify(e)!==t}))},5749:function(t,e,n){var r=n(788),o=TypeError;t.exports=function(t){if(r(t))throw new o(\"The method doesn't accept regular expressions\");return t}},4213:function(t,e,n){var r=n(3724),o=n(9504),i=n(9565),a=n(9039),s=n(1072),u=n(3717),c=n(8773),l=n(8981),f=n(7055),p=Object.assign,d=Object.defineProperty,h=o([].concat);t.exports=!p||a((function(){if(r&&1!==p({b:1},p(d({},\"a\",{enumerable:!0,get:function(){d(this,\"b\",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol(\"assign detection\"),o=\"abcdefghijklmnopqrst\";return t[n]=7,o.split(\"\").forEach((function(t){e[t]=t})),7!==p({},t)[n]||s(p({},e)).join(\"\")!==o}))?function(t,e){for(var n=l(t),o=arguments.length,a=1,p=u.f,d=c.f;o>a;)for(var v,y=f(arguments[a++]),g=p?h(s(y),p(y)):s(y),m=g.length,b=0;m>b;)v=g[b++],r&&!i(d,y,v)||(n[v]=y[v]);return n}:p},2360:function(t,e,n){var r,o=n(8551),i=n(6801),a=n(8727),s=n(421),u=n(397),c=n(4055),l=n(6119),f=\"prototype\",p=\"script\",d=l(\"IE_PROTO\"),h=function(){},v=function(t){return\"<\"+p+\">\"+t+\"</\"+p+\">\"},y=function(t){t.write(v(\"\")),t.close();var e=t.parentWindow.Object;return t=null,e},g=function(){try{r=new ActiveXObject(\"htmlfile\")}catch(t){}var t,e,n;g=\"undefined\"!=typeof document?document.domain&&r?y(r):(e=c(\"iframe\"),n=\"java\"+p+\":\",e.style.display=\"none\",u.appendChild(e),e.src=String(n),(t=e.contentWindow.document).open(),t.write(v(\"document.F=Object\")),t.close(),t.F):y(r);for(var o=a.length;o--;)delete g[f][a[o]];return g()};s[d]=!0,t.exports=Object.create||function(t,e){var n;return null!==t?(h[f]=o(t),n=new h,h[f]=null,n[d]=t):n=g(),void 0===e?n:i.f(n,e)}},6801:function(t,e,n){var r=n(3724),o=n(8686),i=n(4913),a=n(8551),s=n(5397),u=n(1072);e.f=r&&!o?Object.defineProperties:function(t,e){a(t);for(var n,r=s(e),o=u(e),c=o.length,l=0;c>l;)i.f(t,n=o[l++],r[n]);return t}},4913:function(t,e,n){var r=n(3724),o=n(5917),i=n(8686),a=n(8551),s=n(6969),u=TypeError,c=Object.defineProperty,l=Object.getOwnPropertyDescriptor,f=\"enumerable\",p=\"configurable\",d=\"writable\";e.f=r?i?function(t,e,n){if(a(t),e=s(e),a(n),\"function\"==typeof t&&\"prototype\"===e&&\"value\"in n&&d in n&&!n[d]){var r=l(t,e);r&&r[d]&&(t[e]=n.value,n={configurable:p in n?n[p]:r[p],enumerable:f in n?n[f]:r[f],writable:!1})}return c(t,e,n)}:c:function(t,e,n){if(a(t),e=s(e),a(n),o)try{return c(t,e,n)}catch(t){}if(\"get\"in n||\"set\"in n)throw new u(\"Accessors not supported\");return\"value\"in n&&(t[e]=n.value),t}},7347:function(t,e,n){var r=n(3724),o=n(9565),i=n(8773),a=n(6980),s=n(5397),u=n(6969),c=n(9297),l=n(5917),f=Object.getOwnPropertyDescriptor;e.f=r?f:function(t,e){if(t=s(t),e=u(e),l)try{return f(t,e)}catch(t){}if(c(t,e))return a(!o(i.f,t,e),t[e])}},298:function(t,e,n){var r=n(2195),o=n(5397),i=n(8480).f,a=n(7680),s=\"object\"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function(t){return s&&\"Window\"===r(t)?function(t){try{return i(t)}catch(t){return a(s)}}(t):i(o(t))}},8480:function(t,e,n){var r=n(1828),o=n(8727).concat(\"length\",\"prototype\");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},3717:function(t,e){e.f=Object.getOwnPropertySymbols},2787:function(t,e,n){var r=n(9297),o=n(4901),i=n(8981),a=n(6119),s=n(2211),u=a(\"IE_PROTO\"),c=Object,l=c.prototype;t.exports=s?c.getPrototypeOf:function(t){var e=i(t);if(r(e,u))return e[u];var n=e.constructor;return o(n)&&e instanceof n?n.prototype:e instanceof c?l:null}},1625:function(t,e,n){var r=n(9504);t.exports=r({}.isPrototypeOf)},1828:function(t,e,n){var r=n(9504),o=n(9297),i=n(5397),a=n(9617).indexOf,s=n(421),u=r([].push);t.exports=function(t,e){var n,r=i(t),c=0,l=[];for(n in r)!o(s,n)&&o(r,n)&&u(l,n);for(;e.length>c;)o(r,n=e[c++])&&(~a(l,n)||u(l,n));return l}},1072:function(t,e,n){var r=n(1828),o=n(8727);t.exports=Object.keys||function(t){return r(t,o)}},8773:function(t,e){var n={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,o=r&&!n.call({1:2},1);e.f=o?function(t){var e=r(this,t);return!!e&&e.enumerable}:n},2551:function(t,e,n){var r=n(6395),o=n(4576),i=n(9039),a=n(3607);t.exports=r||!i((function(){if(!(a&&a<535)){var t=Math.random();__defineSetter__.call(null,t,(function(){})),delete o[t]}}))},2967:function(t,e,n){var r=n(6706),o=n(34),i=n(7750),a=n(3506);t.exports=Object.setPrototypeOf||(\"__proto__\"in{}?function(){var t,e=!1,n={};try{(t=r(Object.prototype,\"__proto__\",\"set\"))(n,[]),e=n instanceof Array}catch(t){}return function(n,r){return i(n),a(r),o(n)?(e?t(n,r):n.__proto__=r,n):n}}():void 0)},3179:function(t,e,n){var r=n(2140),o=n(6955);t.exports=r?{}.toString:function(){return\"[object \"+o(this)+\"]\"}},4270:function(t,e,n){var r=n(9565),o=n(4901),i=n(34),a=TypeError;t.exports=function(t,e){var n,s;if(\"string\"===e&&o(n=t.toString)&&!i(s=r(n,t)))return s;if(o(n=t.valueOf)&&!i(s=r(n,t)))return s;if(\"string\"!==e&&o(n=t.toString)&&!i(s=r(n,t)))return s;throw new a(\"Can't convert object to primitive value\")}},5031:function(t,e,n){var r=n(7751),o=n(9504),i=n(8480),a=n(3717),s=n(8551),u=o([].concat);t.exports=r(\"Reflect\",\"ownKeys\")||function(t){var e=i.f(s(t)),n=a.f;return n?u(e,n(t)):e}},8235:function(t,e,n){var r=n(9504),o=n(9297),i=SyntaxError,a=parseInt,s=String.fromCharCode,u=r(\"\".charAt),c=r(\"\".slice),l=r(/./.exec),f={'\\\\\"':'\"',\"\\\\\\\\\":\"\\\\\",\"\\\\/\":\"/\",\"\\\\b\":\"\\b\",\"\\\\f\":\"\\f\",\"\\\\n\":\"\\n\",\"\\\\r\":\"\\r\",\"\\\\t\":\"\\t\"},p=/^[\\da-f]{4}$/i,d=/^[\\u0000-\\u001F]$/;t.exports=function(t,e){for(var n=!0,r=\"\";e<t.length;){var h=u(t,e);if(\"\\\\\"===h){var v=c(t,e,e+2);if(o(f,v))r+=f[v],e+=2;else{if(\"\\\\u\"!==v)throw new i('Unknown escape sequence: \"'+v+'\"');var y=c(t,e+=2,e+4);if(!l(p,y))throw new i(\"Bad Unicode escape at: \"+e);r+=s(a(y,16)),e+=4}}else{if('\"'===h){n=!1,e++;break}if(l(d,h))throw new i(\"Bad control character in string literal at: \"+e);r+=h,e++}}if(n)throw new i(\"Unterminated string at: \"+e);return{value:r,end:e}}},9167:function(t,e,n){var r=n(4576);t.exports=r},1056:function(t,e,n){var r=n(4913).f;t.exports=function(t,e,n){n in t||r(t,n,{configurable:!0,get:function(){return e[n]},set:function(t){e[n]=t}})}},6682:function(t,e,n){var r=n(9565),o=n(8551),i=n(4901),a=n(2195),s=n(7323),u=TypeError;t.exports=function(t,e){var n=t.exec;if(i(n)){var c=r(n,t,e);return null!==c&&o(c),c}if(\"RegExp\"===a(t))return r(s,t,e);throw new u(\"RegExp#exec called on incompatible receiver\")}},7323:function(t,e,n){var r,o,i=n(9565),a=n(9504),s=n(655),u=n(7979),c=n(8429),l=n(5745),f=n(2360),p=n(1181).get,d=n(3635),h=n(8814),v=l(\"native-string-replace\",String.prototype.replace),y=RegExp.prototype.exec,g=y,m=a(\"\".charAt),b=a(\"\".indexOf),w=a(\"\".replace),x=a(\"\".slice),O=(o=/b*/g,i(y,r=/a/,\"a\"),i(y,o,\"a\"),0!==r.lastIndex||0!==o.lastIndex),E=c.BROKEN_CARET,S=void 0!==/()??/.exec(\"\")[1],k=function(t,e){for(var n=t.groups=f(null),r=0;r<e.length;r++){var o=e[r];n[o[0]]=t[o[1]]}};(O||S||E||d||h)&&(g=function(t){var e,n,r,o=this,a=p(o),c=s(t),l=a.raw;if(l)return l.lastIndex=o.lastIndex,e=i(g,l,c),o.lastIndex=l.lastIndex,e&&a.groups&&k(e,a.groups),e;var f=a.groups,d=E&&o.sticky,h=i(u,o),P=o.source,I=0,C=c;if(d){h=w(h,\"y\",\"\"),-1===b(h,\"g\")&&(h+=\"g\"),C=x(c,o.lastIndex);var A=o.lastIndex>0&&m(c,o.lastIndex-1);o.lastIndex>0&&(!o.multiline||o.multiline&&\"\\n\"!==A&&\"\\r\"!==A&&\"\\u2028\"!==A&&\"\\u2029\"!==A)&&(P=\"(?: (?:\"+P+\"))\",C=\" \"+C,I++),n=new RegExp(\"^(?:\"+P+\")\",h)}S&&(n=new RegExp(\"^\"+P+\"$(?!\\\\s)\",h)),O&&(r=o.lastIndex);var M=i(y,d?n:o,C);return d?M?(M.input=c,M[0]=x(M[0],I),M.index=o.lastIndex,o.lastIndex+=M[0].length):o.lastIndex=0:O&&M&&(o.lastIndex=o.global?M.index+M[0].length:r),S&&M&&M.length>1&&i(v,M[0],n,(function(){for(var t=1;t<arguments.length-2;t++)void 0===arguments[t]&&(M[t]=void 0)})),M&&f&&k(M,f),M}),t.exports=g},5213:function(t,e,n){var r=n(4576),o=n(9039),i=r.RegExp,a=!o((function(){var t=!0;try{i(\".\",\"d\")}catch(e){t=!1}var e={},n=\"\",r=t?\"dgimsy\":\"gimsy\",o=function(t,r){Object.defineProperty(e,t,{get:function(){return n+=r,!0}})},a={dotAll:\"s\",global:\"g\",ignoreCase:\"i\",multiline:\"m\",sticky:\"y\"};for(var s in t&&(a.hasIndices=\"d\"),a)o(s,a[s]);return Object.getOwnPropertyDescriptor(i.prototype,\"flags\").get.call(e)!==r||n!==r}));t.exports={correct:a}},7979:function(t,e,n){var r=n(8551);t.exports=function(){var t=r(this),e=\"\";return t.hasIndices&&(e+=\"d\"),t.global&&(e+=\"g\"),t.ignoreCase&&(e+=\"i\"),t.multiline&&(e+=\"m\"),t.dotAll&&(e+=\"s\"),t.unicode&&(e+=\"u\"),t.unicodeSets&&(e+=\"v\"),t.sticky&&(e+=\"y\"),e}},1034:function(t,e,n){var r=n(9565),o=n(9297),i=n(1625),a=n(5213),s=n(7979),u=RegExp.prototype;t.exports=a.correct?function(t){return t.flags}:function(t){return a.correct||!i(u,t)||o(t,\"flags\")?t.flags:r(s,t)}},8429:function(t,e,n){var r=n(9039),o=n(4576).RegExp,i=r((function(){var t=o(\"a\",\"y\");return t.lastIndex=2,null!==t.exec(\"abcd\")})),a=i||r((function(){return!o(\"a\",\"y\").sticky})),s=i||r((function(){var t=o(\"^r\",\"gy\");return t.lastIndex=2,null!==t.exec(\"str\")}));t.exports={BROKEN_CARET:s,MISSED_STICKY:a,UNSUPPORTED_Y:i}},3635:function(t,e,n){var r=n(9039),o=n(4576).RegExp;t.exports=r((function(){var t=o(\".\",\"s\");return!(t.dotAll&&t.test(\"\\n\")&&\"s\"===t.flags)}))},8814:function(t,e,n){var r=n(9039),o=n(4576).RegExp;t.exports=r((function(){var t=o(\"(?<a>b)\",\"g\");return\"b\"!==t.exec(\"b\").groups.a||\"bc\"!==\"b\".replace(t,\"$<a>c\")}))},7750:function(t,e,n){var r=n(4117),o=TypeError;t.exports=function(t){if(r(t))throw new o(\"Can't call method on \"+t);return t}},7633:function(t,e,n){var r=n(7751),o=n(2106),i=n(8227),a=n(3724),s=i(\"species\");t.exports=function(t){var e=r(t);a&&e&&!e[s]&&o(e,s,{configurable:!0,get:function(){return this}})}},687:function(t,e,n){var r=n(4913).f,o=n(9297),i=n(8227)(\"toStringTag\");t.exports=function(t,e,n){t&&!n&&(t=t.prototype),t&&!o(t,i)&&r(t,i,{configurable:!0,value:e})}},6119:function(t,e,n){var r=n(5745),o=n(3392),i=r(\"keys\");t.exports=function(t){return i[t]||(i[t]=o(t))}},7629:function(t,e,n){var r=n(6395),o=n(4576),i=n(9433),a=\"__core-js_shared__\",s=t.exports=o[a]||i(a,{});(s.versions||(s.versions=[])).push({version:\"3.49.0\",mode:r?\"pure\":\"global\",copyright:\"© 2013–2025 Denis Pushkarev (zloirock.ru), 2025–2026 CoreJS Company (core-js.io). All rights reserved.\",license:\"https://github.com/zloirock/core-js/blob/v3.49.0/LICENSE\",source:\"https://github.com/zloirock/core-js\"})},5745:function(t,e,n){var r=n(7629);t.exports=function(t,e){return r[t]||(r[t]=e||{})}},2293:function(t,e,n){var r=n(8551),o=n(5548),i=n(4117),a=n(8227)(\"species\");t.exports=function(t,e){var n,s=r(t).constructor;return void 0===s||i(n=r(s)[a])?e:o(n)}},8183:function(t,e,n){var r=n(9504),o=n(1291),i=n(655),a=n(7750),s=r(\"\".charAt),u=r(\"\".charCodeAt),c=r(\"\".slice),l=function(t){return function(e,n){var r,l,f=i(a(e)),p=o(n),d=f.length;return p<0||p>=d?t?\"\":void 0:(r=u(f,p))<55296||r>56319||p+1===d||(l=u(f,p+1))<56320||l>57343?t?s(f,p):r:t?c(f,p,p+2):l-56320+(r-55296<<10)+65536}};t.exports={codeAt:l(!1),charAt:l(!0)}},706:function(t,e,n){var r=n(350).PROPER,o=n(9039),i=n(7452);t.exports=function(t){return o((function(){return!!i[t]()||\"​…᠎\"!==\"​…᠎\"[t]()||r&&i[t].name!==t}))}},3802:function(t,e,n){var r=n(9504),o=n(7750),i=n(655),a=n(7452),s=r(\"\".replace),u=RegExp(\"^[\"+a+\"]+\"),c=RegExp(\"(^|[^\"+a+\"])[\"+a+\"]+$\"),l=function(t){return function(e){var n=i(o(e));return 1&t&&(n=s(n,u,\"\")),2&t&&(n=s(n,c,\"$1\")),n}};t.exports={start:l(1),end:l(2),trim:l(3)}},4495:function(t,e,n){var r=n(9519),o=n(9039),i=n(4576).String;t.exports=!!Object.getOwnPropertySymbols&&!o((function(){var t=Symbol(\"symbol detection\");return!i(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},8242:function(t,e,n){var r=n(9565),o=n(7751),i=n(8227),a=n(6840);t.exports=function(){var t=o(\"Symbol\"),e=t&&t.prototype,n=e&&e.valueOf,s=i(\"toPrimitive\");e&&!e[s]&&a(e,s,(function(t){return r(n,this)}),{arity:1})}},1296:function(t,e,n){var r=n(4495);t.exports=r&&!!Symbol.for&&!!Symbol.keyFor},1240:function(t,e,n){var r=n(9504);t.exports=r(1.1.valueOf)},5610:function(t,e,n){var r=n(1291),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},5397:function(t,e,n){var r=n(7055),o=n(7750);t.exports=function(t){return r(o(t))}},1291:function(t,e,n){var r=n(741);t.exports=function(t){var e=+t;return e!=e||0===e?0:r(e)}},8014:function(t,e,n){var r=n(1291),o=Math.min;t.exports=function(t){var e=r(t);return e>0?o(e,9007199254740991):0}},8981:function(t,e,n){var r=n(7750),o=Object;t.exports=function(t){return o(r(t))}},2777:function(t,e,n){var r=n(9565),o=n(34),i=n(757),a=n(5966),s=n(4270),u=n(8227),c=TypeError,l=u(\"toPrimitive\");t.exports=function(t,e){if(!o(t)||i(t))return t;var n,u=a(t,l);if(u){if(void 0===e&&(e=\"default\"),n=r(u,t,e),!o(n)||i(n))return n;throw new c(\"Can't convert object to primitive value\")}return void 0===e&&(e=\"number\"),s(t,e)}},6969:function(t,e,n){var r=n(2777),o=n(757);t.exports=function(t){var e=r(t,\"string\");return o(e)?e:e+\"\"}},2140:function(t,e,n){var r={};r[n(8227)(\"toStringTag\")]=\"z\",t.exports=\"[object z]\"===String(r)},655:function(t,e,n){var r=n(6955),o=String;t.exports=function(t){if(\"Symbol\"===r(t))throw new TypeError(\"Cannot convert a Symbol value to a string\");return o(t)}},6823:function(t){var e=String;t.exports=function(t){try{return e(t)}catch(t){return\"Object\"}}},3392:function(t,e,n){var r=n(9504),o=0,i=Math.random(),a=r(1.1.toString);t.exports=function(t){return\"Symbol(\"+(void 0===t?\"\":t)+\")_\"+a(++o+i,36)}},7040:function(t,e,n){var r=n(4495);t.exports=r&&!Symbol.sham&&\"symbol\"==typeof Symbol.iterator},8686:function(t,e,n){var r=n(3724),o=n(9039);t.exports=r&&o((function(){return 42!==Object.defineProperty((function(){}),\"prototype\",{value:42,writable:!1}).prototype}))},8622:function(t,e,n){var r=n(4576),o=n(4901),i=r.WeakMap;t.exports=o(i)&&/native code/.test(String(i))},511:function(t,e,n){var r=n(9167),o=n(9297),i=n(1951),a=n(4913).f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},1951:function(t,e,n){var r=n(8227);e.f=r},8227:function(t,e,n){var r=n(4576),o=n(5745),i=n(9297),a=n(3392),s=n(4495),u=n(7040),c=r.Symbol,l=o(\"wks\"),f=u?c.for||c:c&&c.withoutSetter||a;t.exports=function(t){return i(l,t)||(l[t]=s&&i(c,t)?c[t]:f(\"Symbol.\"+t)),l[t]}},7452:function(t){t.exports=\"\\t\\n\\v\\f\\r                 \\u2028\\u2029\\ufeff\"},8706:function(t,e,n){var r=n(6518),o=n(9039),i=n(4376),a=n(34),s=n(8981),u=n(6198),c=n(6837),l=n(4659),f=n(4527),p=n(1469),d=n(597),h=n(8227),v=n(9519),y=h(\"isConcatSpreadable\"),g=v>=51||!o((function(){var t=[];return t[y]=!1,t.concat()[0]!==t})),m=function(t){if(!a(t))return!1;var e=t[y];return void 0!==e?!!e:i(t)};r({target:\"Array\",proto:!0,arity:1,forced:!g||!d(\"concat\")},{concat:function(t){var e,n,r,o,i,a=s(this),d=p(a,0),h=0;for(e=-1,r=arguments.length;e<r;e++)if(m(i=-1===e?a:arguments[e]))for(o=u(i),c(h+o),n=0;n<o;n++,h++)n in i&&l(d,h,i[n]);else c(h+1),l(d,h++,i);return f(d,h),d}})},2008:function(t,e,n){var r=n(6518),o=n(9213).filter;r({target:\"Array\",proto:!0,forced:!n(597)(\"filter\")},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},3418:function(t,e,n){var r=n(6518),o=n(7916);r({target:\"Array\",stat:!0,forced:!n(4428)((function(t){Array.from(t)}))},{from:o})},4423:function(t,e,n){var r=n(6518),o=n(9617).includes,i=n(9039),a=n(6469),s=i((function(){return!Array(1).includes()})),u=i((function(){return[,1].includes(void 0,1)}));r({target:\"Array\",proto:!0,forced:s||u},{includes:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}}),a(\"includes\")},5276:function(t,e,n){var r=n(6518),o=n(7476),i=n(9617).indexOf,a=n(4598),s=o([].indexOf),u=!!s&&1/s([1],1,-0)<0;r({target:\"Array\",proto:!0,forced:u||!a(\"indexOf\")},{indexOf:function(t){var e=arguments.length>1?arguments[1]:void 0;return u?s(this,t,e)||0:i(this,t,e)}})},3792:function(t,e,n){var r=n(5397),o=n(6469),i=n(6269),a=n(1181),s=n(4913).f,u=n(1088),c=n(2529),l=n(6395),f=n(3724),p=\"Array Iterator\",d=a.set,h=a.getterFor(p);t.exports=u(Array,\"Array\",(function(t,e){d(this,{type:p,target:r(t),index:0,kind:e})}),(function(){var t=h(this),e=t.target,n=t.index++;if(!e||n>=e.length)return t.target=null,c(void 0,!0);switch(t.kind){case\"keys\":return c(n,!1);case\"values\":return c(e[n],!1)}return c([n,e[n]],!1)}),\"values\");var v=i.Arguments=i.Array;if(o(\"keys\"),o(\"values\"),o(\"entries\"),!l&&f&&\"values\"!==v.name)try{s(v,\"name\",{value:\"values\"})}catch(t){}},8598:function(t,e,n){var r=n(6518),o=n(9504),i=n(7055),a=n(5397),s=n(4598),u=o([].join);r({target:\"Array\",proto:!0,forced:i!==Object||!s(\"join\",\",\")},{join:function(t){return u(a(this),void 0===t?\",\":t)}})},2062:function(t,e,n){var r=n(6518),o=n(9213).map;r({target:\"Array\",proto:!0,forced:!n(597)(\"map\")},{map:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},2712:function(t,e,n){var r=n(6518),o=n(926).left,i=n(4598),a=n(9519);r({target:\"Array\",proto:!0,forced:!n(6193)&&a>79&&a<83||!i(\"reduce\")},{reduce:function(t){var e=arguments.length;return o(this,t,e,e>1?arguments[1]:void 0)}})},4782:function(t,e,n){var r=n(6518),o=n(4376),i=n(3517),a=n(34),s=n(5610),u=n(6198),c=n(5397),l=n(4659),f=n(4527),p=n(8227),d=n(597),h=n(7680),v=d(\"slice\"),y=p(\"species\"),g=Array,m=Math.max;r({target:\"Array\",proto:!0,forced:!v},{slice:function(t,e){var n,r,p,d=c(this),v=u(d),b=s(t,v),w=s(void 0===e?v:e,v);if(o(d)&&(n=d.constructor,(i(n)&&(n===g||o(n.prototype))||a(n)&&null===(n=n[y]))&&(n=void 0),n===g||void 0===n))return h(d,b,w);for(r=new(void 0===n?g:n)(m(w-b,0)),p=0;b<w;b++,p++)b in d&&l(r,p,d[b]);return f(r,p),r}})},6910:function(t,e,n){var r=n(6518),o=n(9504),i=n(9306),a=n(8981),s=n(6198),u=n(4606),c=n(655),l=n(9039),f=n(4488),p=n(4598),d=n(3709),h=n(3763),v=n(9519),y=n(3607),g=[],m=o(g.sort),b=o(g.push),w=l((function(){g.sort(void 0)})),x=l((function(){g.sort(null)})),O=p(\"sort\"),E=!l((function(){if(v)return v<70;if(!(d&&d>3)){if(h)return!0;if(y)return y<603;var t,e,n,r,o=\"\";for(t=65;t<76;t++){switch(e=String.fromCharCode(t),t){case 66:case 69:case 70:case 72:n=3;break;case 68:case 71:n=4;break;default:n=2}for(r=0;r<47;r++)g.push({k:e+r,v:n})}for(g.sort((function(t,e){return e.v-t.v})),r=0;r<g.length;r++)e=g[r].k.charAt(0),o.charAt(o.length-1)!==e&&(o+=e);return\"DGBEFHACIJK\"!==o}}));r({target:\"Array\",proto:!0,forced:w||!x||!O||!E},{sort:function(t){void 0!==t&&i(t);var e=a(this);if(E)return void 0===t?m(e):m(e,t);var n,r,o=[],l=s(e);for(r=0;r<l;r++)r in e&&b(o,e[r]);for(f(o,function(t){return function(e,n){if(void 0===n)return-1;if(void 0===e)return 1;if(void 0!==t)return+t(e,n)||0;var r=c(e),o=c(n);return r===o?0:r>o?1:-1}}(t)),n=s(o),r=0;r<n;)e[r]=o[r++];for(;r<l;)u(e,r++);return e}})},4554:function(t,e,n){var r=n(6518),o=n(8981),i=n(5610),a=n(1291),s=n(6198),u=n(4527),c=n(6837),l=n(1469),f=n(4659),p=n(4606),d=n(597)(\"splice\"),h=Math.max,v=Math.min;r({target:\"Array\",proto:!0,forced:!d},{splice:function(t,e){var n,r,d,y,g,m,b=o(this),w=s(b),x=i(t,w),O=arguments.length;for(0===O?n=r=0:1===O?(n=0,r=w-x):(n=O-2,r=v(h(a(e),0),w-x)),c(w+n-r),d=l(b,r),y=0;y<r;y++)(g=x+y)in b&&f(d,y,b[g]);if(u(d,r),n<r){for(y=x;y<w-r;y++)m=y+n,(g=y+r)in b?b[m]=b[g]:p(b,m);for(y=w;y>w-r+n;y--)p(b,y-1)}else if(n>r)for(y=w-r;y>x;y--)m=y+n-1,(g=y+r-1)in b?b[m]=b[g]:p(b,m);for(y=0;y<n;y++)b[y+x]=arguments[y+2];return u(b,w-r+n),d}})},739:function(t,e,n){var r=n(6518),o=n(9039),i=n(8981),a=n(2777);r({target:\"Date\",proto:!0,arity:1,forced:o((function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}))},{toJSON:function(t){var e=i(this),n=a(e,\"number\");return\"number\"!=typeof n||isFinite(n)?e.toISOString():null}})},9572:function(t,e,n){var r=n(9297),o=n(6840),i=n(3640),a=n(8227)(\"toPrimitive\"),s=Date.prototype;r(s,a)||o(s,a,i)},2010:function(t,e,n){var r=n(3724),o=n(350).EXISTS,i=n(9504),a=n(2106),s=Function.prototype,u=i(s.toString),c=/function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/,l=i(c.exec);r&&!o&&a(s,\"name\",{configurable:!0,get:function(){try{return l(c,u(this))[1]}catch(t){return\"\"}}})},3110:function(t,e,n){var r=n(6518),o=n(7751),i=n(8745),a=n(9565),s=n(9504),u=n(9039),c=n(4376),l=n(4901),f=n(5810),p=n(757),d=n(2195),h=n(655),v=n(7680),y=n(8235),g=n(3392),m=n(4495),b=n(7819),w=String,x=o(\"JSON\",\"stringify\"),O=s(/./.exec),E=s(\"\".charAt),S=s(\"\".charCodeAt),k=s(\"\".replace),P=s(\"\".slice),I=s([].push),C=s(1.1.toString),A=/[\\uD800-\\uDFFF]/g,M=/^[\\uD800-\\uDBFF]$/,D=/^[\\uDC00-\\uDFFF]$/,T=g(),N=T.length,j=!m||u((function(){var t=o(\"Symbol\")(\"stringify detection\");return\"[null]\"!==x([t])||\"{}\"!==x({a:t})||\"{}\"!==x(Object(t))})),R=u((function(){return'\"\\\\udf06\\\\ud834\"'!==x(\"\\udf06\\ud834\")||'\"\\\\udead\"'!==x(\"\\udead\")})),L=j?function(t,e){var n=v(arguments),r=K(e);if(l(r)||void 0!==t&&!p(t))return n[1]=function(t,e){if(l(r)&&(e=a(r,this,w(t),e)),!p(e))return e},i(x,null,n)}:x,B=function(t,e,n){var r=E(n,e-1),o=E(n,e+1);return O(M,t)&&!O(D,o)||O(D,t)&&!O(M,r)?\"\\\\u\"+C(S(t,0),16):t},K=function(t){if(l(t))return t;if(c(t)){for(var e=t.length,n=[],r=0;r<e;r++){var o=t[r];\"string\"==typeof o?I(n,o):\"number\"!=typeof o&&\"Number\"!==d(o)&&\"String\"!==d(o)||I(n,h(o))}var i=n.length,a=!0;return function(t,e){if(a)return a=!1,e;if(c(this))return e;for(var r=0;r<i;r++)if(n[r]===t)return e}}};x&&r({target:\"JSON\",stat:!0,arity:3,forced:j||R||!b},{stringify:function(t,e,n){var r=K(e),o=[],i=L(t,(function(t,e){var n=l(r)?a(r,this,w(t),e):e;return!b&&f(n)?T+(I(o,n.rawJSON)-1):n}),n);if(\"string\"!=typeof i)return i;if(R&&(i=k(i,A,B)),b)return i;for(var s=\"\",u=i.length,c=0;c<u;c++){var p=E(i,c);if('\"'===p){var d=y(i,++c).end-1,h=P(i,c,d);s+=P(h,0,N)===T?o[P(h,N)]:'\"'+h+'\"',c=d}else s+=p}return s}})},2892:function(t,e,n){var r=n(6518),o=n(6395),i=n(3724),a=n(4576),s=n(9167),u=n(9504),c=n(2796),l=n(9297),f=n(3167),p=n(1625),d=n(757),h=n(2777),v=n(9039),y=n(8480).f,g=n(7347).f,m=n(4913).f,b=n(1240),w=n(3802).trim,x=\"Number\",O=a[x],E=s[x],S=O.prototype,k=a.TypeError,P=u(\"\".slice),I=u(\"\".charCodeAt),C=function(t){var e,n,r,o,i,a,s,u,c=h(t,\"number\");if(d(c))throw new k(\"Cannot convert a Symbol value to a number\");if(\"string\"==typeof c&&c.length>2)if(c=w(c),43===(e=I(c,0))||45===e){if(88===(n=I(c,2))||120===n)return NaN}else if(48===e){switch(I(c,1)){case 66:case 98:r=2,o=49;break;case 79:case 111:r=8,o=55;break;default:return+c}for(a=(i=P(c,2)).length,s=0;s<a;s++)if((u=I(i,s))<48||u>o)return NaN;return parseInt(i,r)}return+c},A=c(x,!O(\" 0o1\")||!O(\"0b1\")||O(\"+0x1\")),M=function(t){var e,n=arguments.length<1?0:O(function(t){var e=h(t,\"number\");return\"bigint\"==typeof e?e:C(e)}(t));return p(S,e=this)&&v((function(){b(e)}))?f(Object(n),this,M):n};M.prototype=S,A&&!o&&(S.constructor=M),r({global:!0,constructor:!0,wrap:!0,forced:A},{Number:M});var D=function(t,e){for(var n,r=i?y(e):\"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,fromString,range\".split(\",\"),o=0;r.length>o;o++)l(e,n=r[o])&&!l(t,n)&&m(t,n,g(e,n))};o&&E&&D(s[x],E),(A||o)&&D(s[x],O)},2637:function(t,e,n){n(6518)({target:\"Number\",stat:!0},{isInteger:n(2087)})},9085:function(t,e,n){var r=n(6518),o=n(4213);r({target:\"Object\",stat:!0,arity:2,forced:Object.assign!==o},{assign:o})},7427:function(t,e,n){var r=n(6518),o=n(3724),i=n(2551),a=n(9306),s=n(8981),u=n(4913);o&&r({target:\"Object\",proto:!0,forced:i},{__defineGetter__:function(t,e){u.f(s(this),t,{get:a(e),enumerable:!0,configurable:!0})}})},3851:function(t,e,n){var r=n(6518),o=n(9039),i=n(5397),a=n(7347).f,s=n(3724);r({target:\"Object\",stat:!0,forced:!s||o((function(){a(1)})),sham:!s},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},1278:function(t,e,n){var r=n(6518),o=n(3724),i=n(5031),a=n(5397),s=n(7347),u=n(4659);r({target:\"Object\",stat:!0,sham:!o},{getOwnPropertyDescriptors:function(t){for(var e,n,r=a(t),o=s.f,c=i(r),l={},f=0;c.length>f;)void 0!==(n=o(r,e=c[f++]))&&u(l,e,n);return l}})},1480:function(t,e,n){var r=n(6518),o=n(9039),i=n(298).f;r({target:\"Object\",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},9773:function(t,e,n){var r=n(6518),o=n(4495),i=n(9039),a=n(3717),s=n(8981);r({target:\"Object\",stat:!0,forced:!o||i((function(){a.f(1)}))},{getOwnPropertySymbols:function(t){var e=a.f;return e?e(s(t)):[]}})},9432:function(t,e,n){var r=n(6518),o=n(8981),i=n(1072);r({target:\"Object\",stat:!0,forced:n(9039)((function(){i(1)}))},{keys:function(t){return i(o(t))}})},6099:function(t,e,n){var r=n(2140),o=n(6840),i=n(3179);r||o(Object.prototype,\"toString\",i,{unsafe:!0})},825:function(t,e,n){var r=n(6518),o=n(7751),i=n(8745),a=n(566),s=n(5548),u=n(8551),c=n(34),l=n(2360),f=n(9039),p=o(\"Reflect\",\"construct\"),d=Object.prototype,h=[].push,v=f((function(){function t(){}return!(p((function(){}),[],t)instanceof t)})),y=!f((function(){p((function(){}))})),g=v||y;r({target:\"Reflect\",stat:!0,forced:g,sham:g},{construct:function(t,e){s(t);var n=arguments.length<3?t:s(arguments[2]);if(u(e),y&&!v)return p(t,e,n);if(t===n){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var r=[null];return i(h,r,e),new(i(a,t,r))}var o=n.prototype,f=l(c(o)?o:d),g=i(t,f,e);return c(g)?g:f}})},4864:function(t,e,n){var r=n(3724),o=n(4576),i=n(9504),a=n(2796),s=n(3167),u=n(6699),c=n(2360),l=n(8480).f,f=n(1625),p=n(788),d=n(655),h=n(1034),v=n(8429),y=n(1056),g=n(6840),m=n(9039),b=n(9297),w=n(1181).enforce,x=n(7633),O=n(8227),E=n(3635),S=n(8814),k=O(\"match\"),P=o.RegExp,I=P.prototype,C=o.SyntaxError,A=i(I.exec),M=i(\"\".charAt),D=i(\"\".replace),T=i(\"\".indexOf),N=i(\"\".slice),j=/^\\?<[^\\s\\d!#%&*+<=>@^][^\\s!#%&*+<=>@^]*>/,R=/a/g,L=/a/g,B=new P(R)!==R,K=v.MISSED_STICKY,_=v.UNSUPPORTED_Y;if(a(\"RegExp\",r&&(!B||K||E||S||m((function(){return L[k]=!1,P(R)!==R||P(L)===L||\"/a/i\"!==String(P(R,\"i\"))}))))){for(var F=function(t,e){var n,r,o,i,a,l,v=f(I,this),y=p(t),g=void 0===e,m=[],x=t;if(!v&&y&&g&&t.constructor===F)return t;if((y||f(I,t))&&(t=t.source,g&&(e=h(x))),t=void 0===t?\"\":d(t),e=void 0===e?\"\":d(e),x=t,E&&\"dotAll\"in R&&(r=!!e&&T(e,\"s\")>-1)&&(e=D(e,/s/g,\"\")),n=e,K&&\"sticky\"in R&&(o=!!e&&T(e,\"y\")>-1)&&_&&(e=D(e,/y/g,\"\")),S&&(i=function(t){for(var e,n=t.length,r=0,o=\"\",i=[],a=c(null),s=!1,u=!1,l=0,f=\"\";r<n;r++){if(\"\\\\\"===(e=M(t,r))){if(e+=M(t,++r),!u&&\"\\\\\"===M(e,1)){o+=\"\\\\x5c\";continue}}else if(\"]\"===e)s=!1;else if(!s)switch(!0){case\"[\"===e:s=!0;break;case\"(\"===e:o+=e,A(j,N(t,r+1))?(r+=2,u=!0,l++):\"?\"!==M(t,r+1)&&l++;continue;case\">\"===e&&u:if(\"\"===f||b(a,f))throw new C(\"Invalid capture group name\");a[f]=!0,i[i.length]=[f,l],u=!1,f=\"\";continue}u?f+=e:o+=e}for(var p=0;p<i.length;p++)for(var d=\"\\\\k<\"+i[p][0]+\">\",h=\"\\\\\"+i[p][1];T(o,d)>-1;)o=D(o,d,h);return[o,i]}(t),t=i[0],m=i[1]),a=s(P(t,e),v?this:I,F),(r||o||m.length)&&(l=w(a),r&&(l.dotAll=!0,l.raw=F(function(t){for(var e,n=t.length,r=0,o=\"\",i=!1;r<n;r++)\"\\\\\"!==(e=M(t,r))?i||\".\"!==e?(\"[\"===e?i=!0:\"]\"===e&&(i=!1),o+=e):o+=\"[\\\\s\\\\S]\":o+=e+M(t,++r);return o}(t),n)),o&&(l.sticky=!0),m.length&&(l.groups=m)),t!==x)try{u(a,\"source\",\"\"===x?\"(?:)\":x)}catch(t){}return a},U=l(P),H=0;U.length>H;)y(F,P,U[H++]);I.constructor=F,F.prototype=I,g(o,\"RegExp\",F,{constructor:!0})}x(\"RegExp\")},7495:function(t,e,n){var r=n(6518),o=n(7323);r({target:\"RegExp\",proto:!0,forced:/./.exec!==o},{exec:o})},8781:function(t,e,n){var r=n(350).PROPER,o=n(6840),i=n(8551),a=n(655),s=n(9039),u=n(1034),c=\"toString\",l=RegExp.prototype,f=l[c],p=s((function(){return\"/a/b\"!==f.call({source:\"a\",flags:\"b\"})})),d=r&&f.name!==c;(p||d)&&o(l,c,(function(){var t=i(this);return\"/\"+a(t.source)+\"/\"+a(u(t))}),{unsafe:!0})},1699:function(t,e,n){var r=n(6518),o=n(9504),i=n(5749),a=n(7750),s=n(655),u=n(1436),c=o(\"\".indexOf);r({target:\"String\",proto:!0,forced:!u(\"includes\")},{includes:function(t){return!!~c(s(a(this)),s(i(t)),arguments.length>1?arguments[1]:void 0)}})},7764:function(t,e,n){var r=n(8183).charAt,o=n(655),i=n(1181),a=n(1088),s=n(2529),u=\"String Iterator\",c=i.set,l=i.getterFor(u);a(String,\"String\",(function(t){c(this,{type:u,string:o(t),index:0})}),(function(){var t,e=l(this),n=e.string,o=e.index;return o>=n.length?s(void 0,!0):(t=r(n,o),e.index+=t.length,s(t,!1))}))},8543:function(t,e,n){var r=n(6518),o=n(9565),i=n(7476),a=n(3994),s=n(2529),u=n(7750),c=n(8014),l=n(655),f=n(8551),p=n(34),d=n(2195),h=n(788),v=n(1034),y=n(5966),g=n(6840),m=n(9039),b=n(8227),w=n(2293),x=n(7829),O=n(6682),E=n(1181),S=n(6395),k=b(\"matchAll\"),P=\"RegExp String\",I=P+\" Iterator\",C=E.set,A=E.getterFor(I),M=RegExp.prototype,D=TypeError,T=i(\"\".indexOf),N=i(\"\".matchAll),j=!!N&&!m((function(){N(\"a\",/./)})),R=a((function(t,e,n,r){C(this,{type:I,regexp:t,string:e,global:n,unicode:r,done:!1})}),P,(function(){var t=A(this);if(t.done)return s(void 0,!0);var e=t.regexp,n=t.string,r=O(e,n);return null===r?(t.done=!0,s(void 0,!0)):t.global?(\"\"===l(r[0])&&(e.lastIndex=x(n,c(e.lastIndex),t.unicode)),s(r,!1)):(t.done=!0,s(r,!1))})),L=function(t){var e,n,r,o=f(this),i=l(t),a=w(o,RegExp),s=l(v(o));return e=new a(a===RegExp?o.source:o,s),n=!!~T(s,\"g\"),r=!!~T(s,\"u\")||!!~T(s,\"v\"),e.lastIndex=c(o.lastIndex),new R(e,i,n,r)};r({target:\"String\",proto:!0,forced:j},{matchAll:function(t){var e,n,r,i,a=u(this);if(p(t)){if(h(t)&&(e=l(u(v(t))),!~T(e,\"g\")))throw new D(\"`.matchAll` does not allow non-global regexes\");if(j)return N(a,t);if(void 0===(r=y(t,k))&&S&&\"RegExp\"===d(t)&&(r=L),r)return o(r,t,a)}else if(j)return N(a,t);return n=l(a),i=new RegExp(t,\"g\"),S?o(L,i,n):i[k](n)}}),S||k in M||g(M,k,L)},1761:function(t,e,n){var r=n(9565),o=n(9504),i=n(9228),a=n(8551),s=n(34),u=n(8014),c=n(655),l=n(7750),f=n(5966),p=n(7829),d=n(1034),h=n(6682),v=o(\"\".indexOf);i(\"match\",(function(t,e,n){return[function(e){var n=l(this),o=s(e)?f(e,t):void 0;return o?r(o,e,n):new RegExp(e)[t](c(n))},function(t){var r=a(this),o=c(t),i=n(e,r,o);if(i.done)return i.value;var s=c(d(r));if(!~v(s,\"g\"))return h(r,o);var l=!!~v(s,\"u\")||!!~v(s,\"v\");r.lastIndex=0;for(var f,y=[],g=0;null!==(f=h(r,o));){var m=c(f[0]);y[g]=m,\"\"===m&&(r.lastIndex=p(o,u(r.lastIndex),l)),g++}return 0===g?null:y}]}))},5440:function(t,e,n){var r=n(8745),o=n(9565),i=n(9504),a=n(9228),s=n(9039),u=n(8551),c=n(4901),l=n(34),f=n(1291),p=n(8014),d=n(655),h=n(7750),v=n(7829),y=n(5966),g=n(2478),m=n(1034),b=n(6682),w=n(8227)(\"replace\"),x=Math.max,O=Math.min,E=i([].concat),S=i([].push),k=i(\"\".indexOf),P=i(\"\".slice),I=\"$0\"===\"a\".replace(/./,\"$0\"),C=!!/./[w]&&\"\"===/./[w](\"a\",\"$0\");a(\"replace\",(function(t,e,n){var i=C?\"$\":\"$0\";return[function(t,n){var r=h(this),i=l(t)?y(t,w):void 0;return i?o(i,t,r,n):o(e,d(r),t,n)},function(t,o){var a=u(this),s=d(t),l=c(o);l||(o=d(o));var h=d(m(a));if(\"string\"==typeof o&&!~k(o,i)&&!~k(o,\"$<\")&&!~k(h,\"y\")){var y=n(e,a,s,o);if(y.done)return y.value}var w,I=!!~k(h,\"g\");I&&(w=!!~k(h,\"u\")||!!~k(h,\"v\"),a.lastIndex=0);for(var C,A=[];null!==(C=b(a,s))&&(S(A,C),I);)\"\"===d(C[0])&&(a.lastIndex=v(s,p(a.lastIndex),w));for(var M,D=\"\",T=0,N=0;N<A.length;N++){for(var j,R=d((C=A[N])[0]),L=x(O(f(C.index),s.length),0),B=[],K=1;K<C.length;K++)S(B,void 0===(M=C[K])?M:String(M));var _=C.groups;if(l){var F=E([R],B,L,s);void 0!==_&&S(F,_),j=d(r(o,void 0,F))}else j=g(R,s,L,B,_,o);L>=T&&(D+=P(s,T,L)+j,T=L+R.length)}return D+P(s,T)}]}),!!s((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:\"7\"},t},\"7\"!==\"\".replace(t,\"$<a>\")}))||!I||C)},744:function(t,e,n){var r=n(9565),o=n(9504),i=n(9228),a=n(8551),s=n(34),u=n(7750),c=n(2293),l=n(7829),f=n(8014),p=n(655),d=n(5966),h=n(1034),v=n(6682),y=n(8429),g=n(9039),m=y.UNSUPPORTED_Y,b=Math.min,w=o([].push),x=o(\"\".slice),O=o(\"\".indexOf),E=!g((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n=\"ab\".split(t);return 2!==n.length||\"a\"!==n[0]||\"b\"!==n[1]})),S=\"c\"===\"abbc\".split(/(b)*/)[1]||4!==\"test\".split(/(?:)/,-1).length||2!==\"ab\".split(/(?:ab)*/).length||4!==\".\".split(/(.?)(.?)/).length||\".\".split(/()()/).length>1||\"\".split(/.?/).length;i(\"split\",(function(t,e,n){var o=\"0\".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:r(e,this,t,n)}:e;return[function(e,n){var i=u(this),a=s(e)?d(e,t):void 0;return a?r(a,e,i,n):r(o,p(i),e,n)},function(t,r){var i=a(this),s=p(t);if(!S){var u=n(o,i,s,r,o!==e);if(u.done)return u.value}var d=c(i,RegExp),y=p(h(i)),g=!!~O(y,\"u\")||!!~O(y,\"v\");m?~O(y,\"g\")||(y+=\"g\"):~O(y,\"y\")||(y+=\"y\");var E=new d(m?\"^(?:\"+i.source+\")\":i,y),k=void 0===r?4294967295:r>>>0;if(0===k)return[];if(0===s.length)return null===v(E,s)?[s]:[];for(var P=0,I=0,C=[];I<s.length;){E.lastIndex=m?0:I;var A,M=v(E,m?x(s,I):s);if(null===M||(A=b(f(E.lastIndex+(m?I:0)),s.length))===P)I=l(s,I,g);else{if(w(C,x(s,P,I)),C.length===k)return C;for(var D=1;D<=M.length-1;D++)if(w(C,M[D]),C.length===k)return C;I=P=A}}return w(C,x(s,P)),C}]}),S||!E,m)},2762:function(t,e,n){var r=n(6518),o=n(3802).trim;r({target:\"String\",proto:!0,forced:n(706)(\"trim\")},{trim:function(){return o(this)}})},6761:function(t,e,n){var r=n(6518),o=n(4576),i=n(9565),a=n(9504),s=n(6395),u=n(3724),c=n(4495),l=n(9039),f=n(9297),p=n(1625),d=n(8551),h=n(5397),v=n(6969),y=n(655),g=n(6980),m=n(2360),b=n(1072),w=n(8480),x=n(298),O=n(3717),E=n(7347),S=n(4913),k=n(6801),P=n(8773),I=n(6840),C=n(2106),A=n(5745),M=n(6119),D=n(421),T=n(3392),N=n(8227),j=n(1951),R=n(511),L=n(8242),B=n(687),K=n(1181),_=n(9213).forEach,F=M(\"hidden\"),U=\"Symbol\",H=\"prototype\",$=K.set,G=K.getterFor(U),V=Object[H],z=o.Symbol,J=z&&z[H],Y=o.RangeError,W=o.TypeError,q=o.QObject,X=E.f,Q=S.f,Z=x.f,tt=P.f,et=a([].push),nt=A(\"symbols\"),rt=A(\"op-symbols\"),ot=A(\"wks\"),it=!q||!q[H]||!q[H].findChild,at=function(t,e,n){var r=X(V,e);return r&&delete V[e],Q(t,e,n),r&&t!==V&&Q(V,e,r),t},st=u&&l((function(){return 7!==m(Q({},\"a\",{get:function(){return Q(this,\"a\",{value:7}).a}})).a}))?at:Q,ut=function(t,e){var n=nt[t]=m(J);return $(n,{type:U,tag:t,description:e}),u||(n.description=e),n},ct=function(t,e,n){t===V&&ct(rt,e,n),d(t);var r=v(e);return d(n),f(nt,r)?((\"enumerable\"in n?!n.enumerable:!f(t,r)||f(t,F)&&t[F][r])?(f(t,F)||Q(t,F,g(1,m(null))),t[F][r]=!0):(f(t,F)&&t[F][r]&&(t[F][r]=!1),n=m(n,{enumerable:g(0,!1)})),st(t,r,n)):Q(t,r,n)},lt=function(t,e){d(t);var n=h(e),r=b(n).concat(ht(n));return _(r,(function(e){u&&!i(ft,n,e)||ct(t,e,n[e])})),t},ft=function(t){var e=v(t),n=i(tt,this,e);return!(this===V&&f(nt,e)&&!f(rt,e))&&(!(n||!f(this,e)||!f(nt,e)||f(this,F)&&this[F][e])||n)},pt=function(t,e){var n=h(t),r=v(e);if(n!==V||!f(nt,r)||f(rt,r)){var o=X(n,r);return!o||!f(nt,r)||f(n,F)&&n[F][r]||(o.enumerable=!0),o}},dt=function(t){var e=Z(h(t)),n=[];return _(e,(function(t){f(nt,t)||f(D,t)||et(n,t)})),n},ht=function(t){var e=t===V,n=Z(e?rt:h(t)),r=[];return _(n,(function(t){!f(nt,t)||e&&!f(V,t)||et(r,nt[t])})),r};c||(z=function(){if(p(J,this))throw new W(\"Symbol is not a constructor\");var t=arguments.length&&void 0!==arguments[0]?y(arguments[0]):void 0,e=T(t),n=function(t){var r=void 0===this?o:this;r===V&&i(n,rt,t),f(r,F)&&f(r[F],e)&&(r[F][e]=!1);var a=g(1,t);try{st(r,e,a)}catch(t){if(!(t instanceof Y))throw t;at(r,e,a)}};return u&&it&&st(V,e,{configurable:!0,set:n}),ut(e,t)},I(J=z[H],\"toString\",(function(){return G(this).tag})),I(z,\"withoutSetter\",(function(t){return ut(T(t),t)})),P.f=ft,S.f=ct,k.f=lt,E.f=pt,w.f=x.f=dt,O.f=ht,j.f=function(t){return ut(N(t),t)},u&&(C(J,\"description\",{configurable:!0,get:function(){return G(this).description}}),s||I(V,\"propertyIsEnumerable\",ft,{unsafe:!0}))),r({global:!0,constructor:!0,wrap:!0,forced:!c,sham:!c},{Symbol:z}),_(b(ot),(function(t){R(t)})),r({target:U,stat:!0,forced:!c},{useSetter:function(){it=!0},useSimple:function(){it=!1}}),r({target:\"Object\",stat:!0,forced:!c,sham:!u},{create:function(t,e){return void 0===e?m(t):lt(m(t),e)},defineProperty:ct,defineProperties:lt,getOwnPropertyDescriptor:pt}),r({target:\"Object\",stat:!0,forced:!c},{getOwnPropertyNames:dt}),L(),B(z,U),D[F]=!0},9463:function(t,e,n){var r=n(6518),o=n(3724),i=n(4576),a=n(9565),s=n(9504),u=n(9297),c=n(4901),l=n(1625),f=n(655),p=n(2106),d=n(7740),h=i.Symbol,v=h&&h.prototype;if(o&&c(h)&&(!(\"description\"in v)||void 0!==h().description)){var y={},g=function(){var t=arguments.length<1||void 0===arguments[0]?void 0:f(arguments[0]),e=l(v,this)?new h(t):void 0===t?h():h(t);return\"\"===t&&(y[e]=!0),e};d(g,h);var m=g.for;g.for={for:function(t){var e=f(t),n=a(m,this,e);return\"\"===e&&(y[n]=!0),n}}.for,g.prototype=v,v.constructor=g;var b=\"Symbol(description detection)\"===String(h(\"description detection\")),w=s(v.valueOf),x=s(v.toString),O=/^Symbol\\((.*)\\)[^)]+$/,E=s(\"\".replace),S=s(\"\".slice);p(v,\"description\",{configurable:!0,get:function(){var t=w(this);if(u(y,t))return\"\";var e=x(t),n=b?S(e,7,-1):E(e,O,\"$1\");return\"\"===n?void 0:n}}),r({global:!0,constructor:!0,forced:!0},{Symbol:g})}},1510:function(t,e,n){var r=n(6518),o=n(7751),i=n(9297),a=n(655),s=n(5745),u=n(1296),c=s(\"string-to-symbol-registry\"),l=s(\"symbol-to-string-registry\");r({target:\"Symbol\",stat:!0,forced:!u},{for:function(t){var e=a(t);if(i(c,e))return c[e];var n=o(\"Symbol\")(e);return c[e]=n,l[n]=e,n}})},2259:function(t,e,n){n(511)(\"iterator\")},2675:function(t,e,n){n(6761),n(1510),n(7812),n(3110),n(9773)},7812:function(t,e,n){var r=n(6518),o=n(9297),i=n(757),a=n(6823),s=n(5745),u=n(1296),c=s(\"symbol-to-string-registry\");r({target:\"Symbol\",stat:!0,forced:!u},{keyFor:function(t){if(!i(t))throw new TypeError(a(t)+\" is not a symbol\");if(o(c,t))return c[t]}})},5700:function(t,e,n){var r=n(511),o=n(8242);r(\"toPrimitive\"),o()},8344:function(t,e,n){n(8543)},3500:function(t,e,n){var r=n(4576),o=n(7400),i=n(9296),a=n(235),s=n(6699),u=function(t){if(t&&t.forEach!==a)try{s(t,\"forEach\",a)}catch(e){t.forEach=a}};for(var c in o)o[c]&&u(r[c]&&r[c].prototype);u(i)},2953:function(t,e,n){var r=n(4576),o=n(7400),i=n(9296),a=n(3792),s=n(6699),u=n(687),c=n(8227)(\"iterator\"),l=a.values,f=function(t,e){if(t){if(t[c]!==l)try{s(t,c,l)}catch(e){t[c]=l}if(u(t,e,!0),o[e])for(var n in a)if(t[n]!==a[n])try{s(t,n,a[n])}catch(e){t[n]=a[n]}}};for(var p in o)f(r[p]&&r[p].prototype,p);f(i,\"DOMTokenList\")}},e={};function n(r){var o=e[r];if(void 0!==o)return o.exports;var i=e[r]={exports:{}};return t[r].call(i.exports,i,i.exports,n),i.exports}n.d=function(t,e){for(var r in e)n.o(e,r)&&!n.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},n.g=function(){if(\"object\"==typeof globalThis)return globalThis;try{return this||new Function(\"return this\")()}catch(t){if(\"object\"==typeof window)return window}}(),n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})};var r={};function o(t){return function(t){if(Array.isArray(t))return a(t)}(t)||function(t){if(\"undefined\"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t[\"@@iterator\"])return Array.from(t)}(t)||i(t)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function i(t,e){if(t){if(\"string\"==typeof t)return a(t,e);var n={}.toString.call(t).slice(8,-1);return\"Object\"===n&&t.constructor&&(n=t.constructor.name),\"Map\"===n||\"Set\"===n?Array.from(t):\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?a(t,e):void 0}}function a(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function s(t){return s=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},s(t)}function u(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,l(r.key),r)}}function c(t,e,n){return(e=l(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function l(t){var e=function(t,e){if(\"object\"!=s(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e||\"default\");if(\"object\"!=s(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"==s(e)?e:e+\"\"}n.r(r),n.d(r,{SimpleKeyboard:function(){return T},default:function(){return N}}),n(5276),n(8598),n(4782),n(4554),n(2010),n(7427),n(6099),n(7495),n(8781),n(5440),n(744),n(2762),\"undefined\"==typeof Element||\"remove\"in Element.prototype||(Element.prototype.remove=function(){this.parentNode&&this.parentNode.removeChild(this)}),\"undefined\"!=typeof self&&\"document\"in self&&((!(\"classList\"in document.createElement(\"_\"))||document.createElementNS&&!(\"classList\"in document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\")))&&function(t){if(\"Element\"in t){var e=\"classList\",n=\"prototype\",r=t.Element[n],o=Object,i=String[n].trim||function(){return this.replace(/^\\s+|\\s+$/g,\"\")},a=Array[n].indexOf||function(t){for(var e=0,n=this.length;e<n;e++)if(e in this&&this[e]===t)return e;return-1},s=function(t,e){this.name=t,this.code=DOMException[t],this.message=e},u=function(t,e){if(\"\"===e)throw new s(\"SYNTAX_ERR\",\"The token must not be empty.\");if(/\\s/.test(e))throw new s(\"INVALID_CHARACTER_ERR\",\"The token must not contain space characters.\");return a.call(t,e)},c=function(t){for(var e=i.call(t.getAttribute(\"class\")||\"\"),n=e?e.split(/\\s+/):[],r=0,o=n.length;r<o;r++)this.push(n[r]);this._updateClassName=function(){t.setAttribute(\"class\",this.toString())}},l=c[n]=[],f=function(){return new c(this)};if(s[n]=Error[n],l.item=function(t){return this[t]||null},l.contains=function(t){return~u(this,t+\"\")},l.add=function(){var t,e=arguments,n=0,r=e.length,o=!1;do{~u(this,t=e[n]+\"\")||(this.push(t),o=!0)}while(++n<r);o&&this._updateClassName()},l.remove=function(){var t,e,n=arguments,r=0,o=n.length,i=!1;do{for(e=u(this,t=n[r]+\"\");~e;)this.splice(e,1),i=!0,e=u(this,t)}while(++r<o);i&&this._updateClassName()},l.toggle=function(t,e){var n=this.contains(t),r=n?!0!==e&&\"remove\":!1!==e&&\"add\";return r&&this[r](t),!0===e||!1===e?e:!n},l.replace=function(t,e){var n=u(t+\"\");~n&&(this.splice(n,1,e),this._updateClassName())},l.toString=function(){return this.join(\" \")},o.defineProperty){var p={get:f,enumerable:!0,configurable:!0};try{o.defineProperty(r,e,p)}catch(t){void 0!==t.number&&-2146823252!==t.number||(p.enumerable=!1,o.defineProperty(r,e,p))}}else o[n].__defineGetter__&&r.__defineGetter__(e,f)}}(self),function(){var t=document.createElement(\"_\");if(t.classList.add(\"c1\",\"c2\"),!t.classList.contains(\"c2\")){var e=function(t){var e=DOMTokenList.prototype[t];DOMTokenList.prototype[t]=function(t){var n,r=arguments.length;for(n=0;n<r;n++)t=arguments[n],e.call(this,t)}};e(\"add\"),e(\"remove\")}if(t.classList.toggle(\"c3\",!1),t.classList.contains(\"c3\")){var n=DOMTokenList.prototype.toggle;DOMTokenList.prototype.toggle=function(t,e){return 1 in arguments&&!this.contains(t)==!e?e:n.call(this,t)}}\"replace\"in document.createElement(\"_\").classList||(DOMTokenList.prototype.replace=function(t,e){var n=this.toString().split(\" \"),r=n.indexOf(t+\"\");~r&&(n=n.slice(r),this.remove.apply(this,n),this.add(e),this.add.apply(this,n.slice(1)))}),t=null}()),n(2675),n(9463),n(2259),n(5700),n(8706),n(2008),n(3418),n(4423),n(3792),n(2062),n(6910),n(739),n(9572),n(2892),n(9085),n(3851),n(1278),n(9432),n(4864),n(1699),n(7764),n(8344),n(3500),n(2953),n(2712),n(2637),n(1480),n(825),n(1761);var f=function(){return t=function t(e){var n=e.getOptions,r=e.getCaretPosition,o=e.getCaretPositionEnd,i=e.dispatch;!function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,t),c(this,\"getOptions\",void 0),c(this,\"getCaretPosition\",void 0),c(this,\"getCaretPositionEnd\",void 0),c(this,\"dispatch\",void 0),c(this,\"maxLengthReached\",void 0),c(this,\"isStandardButton\",(function(t){return t&&!(\"{\"===t[0]&&\"}\"===t[t.length-1])})),this.getOptions=n,this.getCaretPosition=r,this.getCaretPositionEnd=o,this.dispatch=i,t.bindMethods(t,this)},e=[{key:\"getButtonType\",value:function(t){return t.includes(\"{\")&&t.includes(\"}\")&&\"{//}\"!==t?\"functionBtn\":\"standardBtn\"}},{key:\"getButtonClass\",value:function(t){var e=this.getButtonType(t),n=t.replace(\"{\",\"\").replace(\"}\",\"\"),r=\"\";return\"standardBtn\"!==e&&(r=\" hg-button-\".concat(n)),\"hg-\".concat(e).concat(r)}},{key:\"getDefaultDiplay\",value:function(){return{\"{bksp}\":\"backspace\",\"{backspace}\":\"backspace\",\"{enter}\":\"< enter\",\"{shift}\":\"shift\",\"{shiftleft}\":\"shift\",\"{shiftright}\":\"shift\",\"{alt}\":\"alt\",\"{s}\":\"shift\",\"{tab}\":\"tab\",\"{lock}\":\"caps\",\"{capslock}\":\"caps\",\"{accept}\":\"Submit\",\"{space}\":\" \",\"{//}\":\" \",\"{esc}\":\"esc\",\"{escape}\":\"esc\",\"{f1}\":\"f1\",\"{f2}\":\"f2\",\"{f3}\":\"f3\",\"{f4}\":\"f4\",\"{f5}\":\"f5\",\"{f6}\":\"f6\",\"{f7}\":\"f7\",\"{f8}\":\"f8\",\"{f9}\":\"f9\",\"{f10}\":\"f10\",\"{f11}\":\"f11\",\"{f12}\":\"f12\",\"{numpaddivide}\":\"/\",\"{numlock}\":\"lock\",\"{arrowup}\":\"↑\",\"{arrowleft}\":\"←\",\"{arrowdown}\":\"↓\",\"{arrowright}\":\"→\",\"{prtscr}\":\"print\",\"{scrolllock}\":\"scroll\",\"{pause}\":\"pause\",\"{insert}\":\"ins\",\"{home}\":\"home\",\"{pageup}\":\"up\",\"{delete}\":\"del\",\"{forwarddelete}\":\"del\",\"{end}\":\"end\",\"{pagedown}\":\"down\",\"{numpadmultiply}\":\"*\",\"{numpadsubtract}\":\"-\",\"{numpadadd}\":\"+\",\"{numpadenter}\":\"enter\",\"{period}\":\".\",\"{numpaddecimal}\":\".\",\"{numpad0}\":\"0\",\"{numpad1}\":\"1\",\"{numpad2}\":\"2\",\"{numpad3}\":\"3\",\"{numpad4}\":\"4\",\"{numpad5}\":\"5\",\"{numpad6}\":\"6\",\"{numpad7}\":\"7\",\"{numpad8}\":\"8\",\"{numpad9}\":\"9\"}}},{key:\"getButtonDisplayName\",value:function(t,e){return(e=arguments.length>2&&void 0!==arguments[2]&&arguments[2]?Object.assign({},this.getDefaultDiplay(),e):e||this.getDefaultDiplay())[t]||t}},{key:\"getUpdatedInput\",value:function(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:n,o=arguments.length>4&&void 0!==arguments[4]&&arguments[4],i=this.getOptions(),a=[n,r,o],s=e;return(\"{bksp}\"===t||\"{backspace}\"===t)&&s.length>0?s=this.removeAt.apply(this,[s].concat(a)):(\"{delete}\"===t||\"{forwarddelete}\"===t)&&s.length>0?s=this.removeForwardsAt.apply(this,[s].concat(a)):\"{space}\"===t?s=this.addStringAt.apply(this,[s,\" \"].concat(a)):\"{tab}\"!==t||\"boolean\"==typeof i.tabCharOnTab&&!1===i.tabCharOnTab?\"{enter}\"!==t&&\"{numpadenter}\"!==t||!i.newLineOnEnter?t.includes(\"numpad\")&&Number.isInteger(Number(t[t.length-2]))?s=this.addStringAt.apply(this,[s,t[t.length-2]].concat(a)):\"{numpaddivide}\"===t?s=this.addStringAt.apply(this,[s,\"/\"].concat(a)):\"{numpadmultiply}\"===t?s=this.addStringAt.apply(this,[s,\"*\"].concat(a)):\"{numpadsubtract}\"===t?s=this.addStringAt.apply(this,[s,\"-\"].concat(a)):\"{numpadadd}\"===t?s=this.addStringAt.apply(this,[s,\"+\"].concat(a)):\"{numpaddecimal}\"===t?s=this.addStringAt.apply(this,[s,\".\"].concat(a)):\"{\"===t||\"}\"===t?s=this.addStringAt.apply(this,[s,t].concat(a)):t.includes(\"{\")||t.includes(\"}\")||(s=this.addStringAt.apply(this,[s,t].concat(a))):s=this.addStringAt.apply(this,[s,\"\\n\"].concat(a)):s=this.addStringAt.apply(this,[s,\"\\t\"].concat(a)),i.debug&&console.log(\"Input will be: \"+s),s}},{key:\"updateCaretPos\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=this.updateCaretPosAction(t,e);this.dispatch((function(t){t.setCaretPosition(n)}))}},{key:\"updateCaretPosAction\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=this.getOptions(),r=this.getCaretPosition();return null!=r&&(e?r>0&&(r-=t):r+=t),n.debug&&console.log(\"Caret at:\",r),r}},{key:\"addStringAt\",value:function(t,e){var n,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.length,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:t.length,i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];return r||0===r?(n=[t.slice(0,r),e,t.slice(o)].join(\"\"),this.isMaxLengthReached()||i&&this.updateCaretPos(e.length)):n=t+e,n}},{key:\"removeAt\",value:function(t){var e,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t.length,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.length,o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(0===n&&0===r)return t;if(n===r){var i=/([\\uD800-\\uDBFF][\\uDC00-\\uDFFF])/g;n&&n>=0?t.substring(n-2,n).match(i)?(e=t.substr(0,n-2)+t.substr(n),o&&this.updateCaretPos(2,!0)):(e=t.substr(0,n-1)+t.substr(n),o&&this.updateCaretPos(1,!0)):t.slice(-2).match(i)?(e=t.slice(0,-2),o&&this.updateCaretPos(2,!0)):(e=t.slice(0,-1),o&&this.updateCaretPos(1,!0))}else e=t.slice(0,n)+t.slice(r),o&&this.dispatch((function(t){t.setCaretPosition(n)}));return e}},{key:\"removeForwardsAt\",value:function(t){var e,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t.length,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.length,o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];return null!=t&&t.length&&null!==n?(n===r?e=t.substring(n,n+2).match(/([\\uD800-\\uDBFF][\\uDC00-\\uDFFF])/g)?t.substr(0,n)+t.substr(n+2):t.substr(0,n)+t.substr(n+1):(e=t.slice(0,n)+t.slice(r),o&&this.dispatch((function(t){t.setCaretPosition(n)}))),e):t}},{key:\"handleMaxLength\",value:function(t,e){var n=this.getOptions(),r=n.maxLength,o=t[n.inputName||\"default\"],i=e.length-1>=r;if(e.length<=o.length)return!1;if(Number.isInteger(r))return n.debug&&console.log(\"maxLength (num) reached:\",i),i?(this.maxLengthReached=!0,!0):(this.maxLengthReached=!1,!1);if(\"object\"===s(r)){var a=e.length-1>=r[n.inputName||\"default\"];return n.debug&&console.log(\"maxLength (obj) reached:\",a),a?(this.maxLengthReached=!0,!0):(this.maxLengthReached=!1,!1)}}},{key:\"isMaxLengthReached\",value:function(){return Boolean(this.maxLengthReached)}},{key:\"isTouchDevice\",value:function(){return\"ontouchstart\"in window||navigator.maxTouchPoints}},{key:\"pointerEventsSupported\",value:function(){return!!window.PointerEvent}},{key:\"camelCase\",value:function(t){return t?t.toLowerCase().trim().split(/[.\\-_\\s]/g).reduce((function(t,e){return e.length?t+e[0].toUpperCase()+e.slice(1):t})):\"\"}},{key:\"chunkArray\",value:function(t,e){return o(Array(Math.ceil(t.length/e))).map((function(n,r){return t.slice(e*r,e+e*r)}))}},{key:\"escapeRegex\",value:function(t){return t.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g,\"\\\\$&\")}},{key:\"getRtlOffset\",value:function(t,e){var n=t,r=e.indexOf(\"‫\");return r<t&&-1!=r&&n--,e.indexOf(\"‬\")<t&&-1!=r&&n--,n<0?0:n}},{key:\"isConstructor\",value:function(t){try{Reflect.construct(String,[],t)}catch(t){return!1}return!0}}],n=[{key:\"bindMethods\",value:function(t,e){var n,r=function(t,e){var n=\"undefined\"!=typeof Symbol&&t[Symbol.iterator]||t[\"@@iterator\"];if(!n){if(Array.isArray(t)||(n=i(t))||e&&t&&\"number\"==typeof t.length){n&&(t=n);var r=0,o=function(){};return{s:o,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:o}}throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}var a,s=!0,u=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return s=t.done,t},e:function(t){u=!0,a=t},f:function(){try{s||null==n.return||n.return()}finally{if(u)throw a}}}}(Object.getOwnPropertyNames(t.prototype));try{for(r.s();!(n=r.n()).done;){var o=n.value;\"constructor\"===o||\"bindMethods\"===o||(e[o]=e[o].bind(e))}}catch(t){r.e(t)}finally{r.f()}}}],e&&u(t.prototype,e),n&&u(t,n),Object.defineProperty(t,\"prototype\",{writable:!1}),t;var t,e,n}();c(f,\"noop\",(function(){}));var p=f;function d(t){return d=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},d(t)}function h(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,y(r.key),r)}}function v(t,e,n){return(e=y(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function y(t){var e=function(t,e){if(\"object\"!=d(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e||\"default\");if(\"object\"!=d(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"==d(e)?e:e+\"\"}var g=function(){return t=function t(e){var n=this,r=e.dispatch,o=e.getOptions;!function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,t),v(this,\"getOptions\",void 0),v(this,\"dispatch\",void 0),v(this,\"isModifierKey\",(function(t){return t.altKey||t.ctrlKey||t.shiftKey||[\"Tab\",\"CapsLock\",\"Esc\",\"ArrowUp\",\"ArrowDown\",\"ArrowLeft\",\"ArrowRight\"].includes(t.code||t.key||n.keyCodeToKey(null==t?void 0:t.keyCode))})),this.dispatch=r,this.getOptions=o,p.bindMethods(t,this)},e=[{key:\"handleHighlightKeyDown\",value:function(t){var e=this.getOptions();e.physicalKeyboardHighlightPreventDefault&&this.isModifierKey(t)&&(t.preventDefault(),t.stopImmediatePropagation());var n=this.getSimpleKeyboardLayoutKey(t);this.dispatch((function(r){var o,i,a=r.getButtonElement(n),s=r.getButtonElement(\"{\".concat(n,\"}\"));if(a)o=a,i=n;else{if(!s)return;o=s,i=\"{\".concat(n,\"}\")}var u,c,l,f,p=function(t){t.style.background=e.physicalKeyboardHighlightBgColor||\"#dadce4\",t.style.color=e.physicalKeyboardHighlightTextColor||\"black\"};if(o)if(Array.isArray(o)){if(o.forEach((function(t){return p(t)})),e.physicalKeyboardHighlightPress)if(e.physicalKeyboardHighlightPressUsePointerEvents)null===(u=o[0])||void 0===u||null===(c=u.onpointerdown)||void 0===c||c.call(u,t);else if(e.physicalKeyboardHighlightPressUseClick){var d;null===(d=o[0])||void 0===d||d.click()}else r.handleButtonClicked(i,t)}else p(o),e.physicalKeyboardHighlightPress&&(e.physicalKeyboardHighlightPressUsePointerEvents?null===(l=o)||void 0===l||null===(f=l.onpointerdown)||void 0===f||f.call(l,t):e.physicalKeyboardHighlightPressUseClick?o.click():r.handleButtonClicked(i,t))}))}},{key:\"handleHighlightKeyUp\",value:function(t){var e=this.getOptions();e.physicalKeyboardHighlightPreventDefault&&this.isModifierKey(t)&&(t.preventDefault(),t.stopImmediatePropagation());var n=this.getSimpleKeyboardLayoutKey(t);this.dispatch((function(r){var o,i,a,s=r.getButtonElement(n)||r.getButtonElement(\"{\".concat(n,\"}\")),u=function(t){t.removeAttribute&&t.removeAttribute(\"style\")};s&&(Array.isArray(s)?(s.forEach((function(t){return u(t)})),e.physicalKeyboardHighlightPressUsePointerEvents&&(null===(o=s[0])||void 0===o||null===(i=o.onpointerup)||void 0===i||i.call(o,t))):(u(s),e.physicalKeyboardHighlightPressUsePointerEvents&&(null==s||null===(a=s.onpointerup)||void 0===a||a.call(s,t))))}))}},{key:\"getSimpleKeyboardLayoutKey\",value:function(t){var e,n=\"\",r=t.code||t.key||this.keyCodeToKey(null==t?void 0:t.keyCode);return(n=null!=r&&r.includes(\"Numpad\")||null!=r&&r.includes(\"Shift\")||null!=r&&r.includes(\"Space\")||null!=r&&r.includes(\"Backspace\")||null!=r&&r.includes(\"Control\")||null!=r&&r.includes(\"Alt\")||null!=r&&r.includes(\"Meta\")?t.code||\"\":t.key||this.keyCodeToKey(null==t?void 0:t.keyCode)||\"\").length>1?null===(e=n)||void 0===e?void 0:e.toLowerCase():n}},{key:\"keyCodeToKey\",value:function(t){return{8:\"Backspace\",9:\"Tab\",13:\"Enter\",16:\"Shift\",17:\"Ctrl\",18:\"Alt\",19:\"Pause\",20:\"CapsLock\",27:\"Esc\",32:\"Space\",33:\"PageUp\",34:\"PageDown\",35:\"End\",36:\"Home\",37:\"ArrowLeft\",38:\"ArrowUp\",39:\"ArrowRight\",40:\"ArrowDown\",45:\"Insert\",46:\"Delete\",48:\"0\",49:\"1\",50:\"2\",51:\"3\",52:\"4\",53:\"5\",54:\"6\",55:\"7\",56:\"8\",57:\"9\",65:\"A\",66:\"B\",67:\"C\",68:\"D\",69:\"E\",70:\"F\",71:\"G\",72:\"H\",73:\"I\",74:\"J\",75:\"K\",76:\"L\",77:\"M\",78:\"N\",79:\"O\",80:\"P\",81:\"Q\",82:\"R\",83:\"S\",84:\"T\",85:\"U\",86:\"V\",87:\"W\",88:\"X\",89:\"Y\",90:\"Z\",91:\"Meta\",96:\"Numpad0\",97:\"Numpad1\",98:\"Numpad2\",99:\"Numpad3\",100:\"Numpad4\",101:\"Numpad5\",102:\"Numpad6\",103:\"Numpad7\",104:\"Numpad8\",105:\"Numpad9\",106:\"NumpadMultiply\",107:\"NumpadAdd\",109:\"NumpadSubtract\",110:\"NumpadDecimal\",111:\"NumpadDivide\",112:\"F1\",113:\"F2\",114:\"F3\",115:\"F4\",116:\"F5\",117:\"F6\",118:\"F7\",119:\"F8\",120:\"F9\",121:\"F10\",122:\"F11\",123:\"F12\",144:\"NumLock\",145:\"ScrollLock\",186:\";\",187:\"=\",188:\",\",189:\"-\",190:\".\",191:\"/\",192:\"`\",219:\"[\",220:\"\\\\\",221:\"]\",222:\"'\"}[t]||\"\"}}],e&&h(t.prototype,e),n&&h(t,n),Object.defineProperty(t,\"prototype\",{writable:!1}),t;var t,e,n}();function m(t){return m=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},m(t)}function b(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,x(r.key),r)}}function w(t,e,n){return(e=x(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function x(t){var e=function(t,e){if(\"object\"!=m(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e||\"default\");if(\"object\"!=m(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"==m(e)?e:e+\"\"}var O=function(){return t=function t(e){var n=e.utilities,r=e.options;!function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,t),w(this,\"utilities\",void 0),w(this,\"options\",void 0),w(this,\"candidateBoxElement\",void 0),w(this,\"pageIndex\",0),w(this,\"pageSize\",void 0),this.utilities=n,this.options=r,p.bindMethods(t,this),this.pageSize=this.utilities.getOptions().layoutCandidatesPageSize||5},e=[{key:\"destroy\",value:function(){this.candidateBoxElement&&(this.candidateBoxElement.remove(),this.pageIndex=0)}},{key:\"show\",value:function(t){var e=this,n=t.candidateValue,r=t.targetElement,o=t.onSelect;if(n&&n.length){var i=this.utilities.chunkArray(n.split(\" \"),this.pageSize);this.renderPage({candidateListPages:i,targetElement:r,pageIndex:this.pageIndex,nbPages:i.length,onItemSelected:function(t,n){o(t,n),e.destroy()}})}}},{key:\"renderPage\",value:function(t){var e,n=this,r=t.candidateListPages,o=t.targetElement,i=t.pageIndex,a=t.nbPages,s=t.onItemSelected;null===(e=this.candidateBoxElement)||void 0===e||e.remove(),this.candidateBoxElement=document.createElement(\"div\"),this.candidateBoxElement.className=\"hg-candidate-box\";var u=document.createElement(\"ul\");u.className=\"hg-candidate-box-list\",r[i].forEach((function(t){var e,r=document.createElement(\"li\"),o=function(){var t=new(n.options.useTouchEvents?TouchEvent:MouseEvent)(\"click\");return Object.defineProperty(t,\"target\",{value:r}),t};r.className=\"hg-candidate-box-list-item\",r.innerHTML=(null===(e=n.options.display)||void 0===e?void 0:e[t])||t,n.options.useTouchEvents?r.ontouchstart=function(e){return s(t,e||o())}:r.onclick=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o();return s(t,e)},u.appendChild(r)}));var c=i>0,l=document.createElement(\"div\");l.classList.add(\"hg-candidate-box-prev\"),c&&l.classList.add(\"hg-candidate-box-btn-active\");var f=function(){c&&n.renderPage({candidateListPages:r,targetElement:o,pageIndex:i-1,nbPages:a,onItemSelected:s})};this.options.useTouchEvents?l.ontouchstart=f:l.onclick=f,this.candidateBoxElement.appendChild(l),this.candidateBoxElement.appendChild(u);var p=i<a-1,d=document.createElement(\"div\");d.classList.add(\"hg-candidate-box-next\"),p&&d.classList.add(\"hg-candidate-box-btn-active\");var h=function(){p&&n.renderPage({candidateListPages:r,targetElement:o,pageIndex:i+1,nbPages:a,onItemSelected:s})};this.options.useTouchEvents?d.ontouchstart=h:d.onclick=h,this.candidateBoxElement.appendChild(d),o.prepend(this.candidateBoxElement)}}],e&&b(t.prototype,e),n&&b(t,n),Object.defineProperty(t,\"prototype\",{writable:!1}),t;var t,e,n}(),E=O;function S(t){return function(t){if(Array.isArray(t))return k(t)}(t)||function(t){if(\"undefined\"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t[\"@@iterator\"])return Array.from(t)}(t)||function(t,e){if(t){if(\"string\"==typeof t)return k(t,e);var n={}.toString.call(t).slice(8,-1);return\"Object\"===n&&t.constructor&&(n=t.constructor.name),\"Map\"===n||\"Set\"===n?Array.from(t):\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?k(t,e):void 0}}(t)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function k(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=Array(e);n<e;n++)r[n]=t[n];return r}function P(t){return P=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},P(t)}function I(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function C(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,\"value\"in r&&(r.writable=!0),Object.defineProperty(t,M(r.key),r)}}function A(t,e,n){return(e=M(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function M(t){var e=function(t,e){if(\"object\"!=P(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e||\"default\");if(\"object\"!=P(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"==P(e)?e:e+\"\"}var D=function(){return t=function t(e,n){var r=this;if(function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,t),A(this,\"input\",void 0),A(this,\"options\",void 0),A(this,\"utilities\",void 0),A(this,\"caretPosition\",void 0),A(this,\"caretPositionEnd\",void 0),A(this,\"keyboardDOM\",void 0),A(this,\"keyboardPluginClasses\",void 0),A(this,\"keyboardDOMClass\",void 0),A(this,\"buttonElements\",void 0),A(this,\"currentInstanceName\",void 0),A(this,\"allKeyboardInstances\",void 0),A(this,\"keyboardInstanceNames\",void 0),A(this,\"isFirstKeyboardInstance\",void 0),A(this,\"physicalKeyboard\",void 0),A(this,\"modules\",void 0),A(this,\"activeButtonClass\",void 0),A(this,\"holdInteractionTimeout\",void 0),A(this,\"holdTimeout\",void 0),A(this,\"isMouseHold\",void 0),A(this,\"initialized\",void 0),A(this,\"candidateBox\",void 0),A(this,\"keyboardRowsDOM\",void 0),A(this,\"defaultName\",\"default\"),A(this,\"activeInputElement\",null),A(this,\"handleParams\",(function(t,e){var n,r,o;if(\"string\"==typeof t)n=t.split(\".\").join(\"\"),r=document.querySelector(\".\".concat(n)),o=e;else if(t instanceof HTMLDivElement){if(!t.className)throw console.warn(\"Any DOM element passed as parameter must have a class.\"),new Error(\"KEYBOARD_DOM_CLASS_ERROR\");n=t.className.split(\" \")[0],r=t,o=e}else n=\"simple-keyboard\",r=document.querySelector(\".\".concat(n)),o=t;return{keyboardDOMClass:n,keyboardDOM:r,options:o}})),A(this,\"getOptions\",(function(){return r.options})),A(this,\"getCaretPosition\",(function(){return r.caretPosition})),A(this,\"getCaretPositionEnd\",(function(){return r.caretPositionEnd})),A(this,\"registerModule\",(function(t,e){r.modules[t]||(r.modules[t]={}),e(r.modules[t])})),A(this,\"getKeyboardClassString\",(function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return[r.keyboardDOMClass].concat(e).filter((function(t){return!!t})).join(\" \")})),\"undefined\"!=typeof window){var o=this.handleParams(e,n),i=o.keyboardDOMClass,a=o.keyboardDOM,s=o.options,u=void 0===s?{}:s;this.utilities=new p({getOptions:this.getOptions,getCaretPosition:this.getCaretPosition,getCaretPositionEnd:this.getCaretPositionEnd,dispatch:this.dispatch}),this.caretPosition=null,this.caretPositionEnd=null,this.keyboardDOM=a,this.options=function(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?I(Object(n),!0).forEach((function(e){A(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):I(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}({layoutName:\"default\",theme:\"hg-theme-default\",inputName:\"default\",preventMouseDownDefault:!1,enableLayoutCandidates:!0,excludeFromLayout:{}},u),this.keyboardPluginClasses=\"\",p.bindMethods(t,this);var c=this.options.inputName,l=void 0===c?this.defaultName:c;if(this.input={},this.input[l]=\"\",this.keyboardDOMClass=i,this.buttonElements={},window.SimpleKeyboardInstances||(window.SimpleKeyboardInstances={}),this.currentInstanceName=this.utilities.camelCase(this.keyboardDOMClass),window.SimpleKeyboardInstances[this.currentInstanceName]=this,this.allKeyboardInstances=window.SimpleKeyboardInstances,this.keyboardInstanceNames=Object.keys(window.SimpleKeyboardInstances),this.isFirstKeyboardInstance=this.keyboardInstanceNames[0]===this.currentInstanceName,this.physicalKeyboard=new g({dispatch:this.dispatch,getOptions:this.getOptions}),this.candidateBox=this.options.enableLayoutCandidates?new E({utilities:this.utilities,options:this.options}):null,!this.keyboardDOM)throw console.warn('\".'.concat(i,'\" was not found in the DOM.')),new Error(\"KEYBOARD_DOM_ERROR\");this.render(),this.modules={},this.loadModules()}},e=[{key:\"setCaretPosition\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t;this.caretPosition=t,this.caretPositionEnd=e}},{key:\"getInputCandidates\",value:function(t){var e=this,n=this.options,r=n.layoutCandidates,o=n.layoutCandidatesCaseSensitiveMatch;if(!r||\"object\"!==P(r))return{};var i=Object.keys(r).filter((function(n){var r=t.substring(0,e.getCaretPositionEnd()||0)||t,i=new RegExp(\"\".concat(e.utilities.escapeRegex(n),\"$\"),o?\"g\":\"gi\");return!!S(r.matchAll(i)).length}));if(i.length>1){var a=i.sort((function(t,e){return e.length-t.length}))[0];return{candidateKey:a,candidateValue:r[a]}}if(i.length){var s=i[0];return{candidateKey:s,candidateValue:r[s]}}return{}}},{key:\"showCandidatesBox\",value:function(t,e,n){var r=this;this.candidateBox&&this.candidateBox.show({candidateValue:e,targetElement:n,onSelect:function(e,n){var o=r.options,i=o.layoutCandidatesCaseSensitiveMatch,a=o.disableCandidateNormalization,s=o.enableLayoutCandidatesKeyPress,u=e;a||(u=e.normalize(\"NFD\")),\"function\"==typeof r.options.beforeInputUpdate&&r.options.beforeInputUpdate(r);var c=r.getInput(r.options.inputName,!0),l=r.getCaretPositionEnd()||0,f=c.substring(0,l||0)||c,p=new RegExp(\"\".concat(r.utilities.escapeRegex(t),\"$\"),i?\"g\":\"gi\"),d=f.replace(p,u),h=c.replace(f,d),v=d.length-f.length,y=(l||c.length)+v;y<0&&(y=0),r.setInput(h,r.options.inputName,!0),r.setCaretPosition(y),s&&\"function\"==typeof r.options.onKeyPress&&r.options.onKeyPress(e,n),\"function\"==typeof r.options.onChange&&r.options.onChange(r.getInput(r.options.inputName,!0),n),\"function\"==typeof r.options.onChangeAll&&r.options.onChangeAll(r.getAllInputs(),n)}})}},{key:\"handleButtonClicked\",value:function(t,e){var n=this.options,r=n.inputName,o=void 0===r?this.defaultName:r,i=n.debug;if(\"{//}\"!==t){this.input[o]||(this.input[o]=\"\"),\"function\"==typeof this.options.beforeInputUpdate&&this.options.beforeInputUpdate(this);var a=this.utilities.getUpdatedInput(t,this.input[o],this.caretPosition,this.caretPositionEnd);if(this.utilities.isStandardButton(t)&&this.activeInputElement&&this.input[o]&&this.input[o]===a&&0===this.caretPosition&&this.caretPositionEnd===a.length)return this.setInput(\"\",this.options.inputName,!0),this.setCaretPosition(0),this.activeInputElement.value=\"\",this.activeInputElement.setSelectionRange(0,0),void this.handleButtonClicked(t,e);if(\"function\"==typeof this.options.onKeyPress&&this.options.onKeyPress(t,e),this.input[o]!==a&&(!this.options.inputPattern||this.options.inputPattern&&this.inputPatternIsValid(a))){if(this.options.maxLength&&this.utilities.handleMaxLength(this.input,a))return;var s=this.utilities.getUpdatedInput(t,this.input[o],this.caretPosition,this.caretPositionEnd,!0);if(this.setInput(s,this.options.inputName,!0),i&&console.log(\"Input changed:\",this.getAllInputs()),this.options.debug&&console.log(\"Caret at: \",this.getCaretPosition(),this.getCaretPositionEnd(),\"(\".concat(this.keyboardDOMClass,\")\"),null==e?void 0:e.type),this.options.syncInstanceInputs&&this.syncInstanceInputs(),\"function\"==typeof this.options.onChange&&this.options.onChange(this.getInput(this.options.inputName,!0),e),\"function\"==typeof this.options.onChangeAll&&this.options.onChangeAll(this.getAllInputs(),e),null!=e&&e.target&&this.options.enableLayoutCandidates){var u,c=this.getInputCandidates(a),l=c.candidateKey,f=c.candidateValue;l&&f?this.showCandidatesBox(l,f,this.keyboardDOM):null===(u=this.candidateBox)||void 0===u||u.destroy()}}this.caretPositionEnd&&this.caretPosition!==this.caretPositionEnd&&(this.setCaretPosition(this.caretPositionEnd,this.caretPositionEnd),this.activeInputElement&&this.activeInputElement.setSelectionRange(this.caretPositionEnd,this.caretPositionEnd),this.options.debug&&console.log(\"Caret position aligned\",this.caretPosition)),i&&console.log(\"Key pressed:\",t)}}},{key:\"getMouseHold\",value:function(){return this.isMouseHold}},{key:\"setMouseHold\",value:function(t){this.options.syncInstanceInputs?this.dispatch((function(e){e.isMouseHold=t})):this.isMouseHold=t}},{key:\"handleButtonMouseDown\",value:function(t,e){var n=this;e&&(this.options.preventMouseDownDefault&&e.preventDefault(),this.options.stopMouseDownPropagation&&e.stopPropagation(),e.target.classList.add(this.activeButtonClass)),this.holdInteractionTimeout&&clearTimeout(this.holdInteractionTimeout),this.holdTimeout&&clearTimeout(this.holdTimeout),this.setMouseHold(!0),this.options.disableButtonHold||(this.holdTimeout=window.setTimeout((function(){(n.getMouseHold()&&(!t.includes(\"{\")&&!t.includes(\"}\")||\"{delete}\"===t||\"{backspace}\"===t||\"{bksp}\"===t||\"{space}\"===t||\"{tab}\"===t)||\"{arrowright}\"===t||\"{arrowleft}\"===t||\"{arrowup}\"===t||\"{arrowdown}\"===t)&&(n.options.debug&&console.log(\"Button held:\",t),n.handleButtonHold(t)),clearTimeout(n.holdTimeout)}),500))}},{key:\"handleButtonMouseUp\",value:function(t,e){var n=this;e&&(this.options.preventMouseUpDefault&&e.preventDefault&&e.preventDefault(),this.options.stopMouseUpPropagation&&e.stopPropagation&&e.stopPropagation(),!(e.target===this.keyboardDOM||e.target&&this.keyboardDOM.contains(e.target)||this.candidateBox&&this.candidateBox.candidateBoxElement&&(e.target===this.candidateBox.candidateBoxElement||e.target&&this.candidateBox.candidateBoxElement.contains(e.target)))&&this.candidateBox&&this.candidateBox.destroy()),this.recurseButtons((function(t){t.classList.remove(n.activeButtonClass)})),this.setMouseHold(!1),this.holdInteractionTimeout&&clearTimeout(this.holdInteractionTimeout),t&&\"function\"==typeof this.options.onKeyReleased&&this.options.onKeyReleased(t,e)}},{key:\"handleKeyboardContainerMouseDown\",value:function(t){this.options.preventMouseDownDefault&&t.preventDefault()}},{key:\"handleButtonHold\",value:function(t){var e=this;this.holdInteractionTimeout&&clearTimeout(this.holdInteractionTimeout),this.holdInteractionTimeout=window.setTimeout((function(){e.getMouseHold()?(e.handleButtonClicked(t),e.handleButtonHold(t)):clearTimeout(e.holdInteractionTimeout)}),100)}},{key:\"syncInstanceInputs\",value:function(){var t=this;this.dispatch((function(e){e.replaceInput(t.input),e.setCaretPosition(t.caretPosition,t.caretPositionEnd)}))}},{key:\"clearInput\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options.inputName||this.defaultName;this.input[t]=\"\",this.setCaretPosition(0),this.options.syncInstanceInputs&&this.syncInstanceInputs()}},{key:\"getInput\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options.inputName||this.defaultName,e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this.options.syncInstanceInputs&&!e&&this.syncInstanceInputs(),this.options.rtl?\"‫\"+this.input[t].replace(\"‫\",\"\").replace(\"‬\",\"\")+\"‬\":this.input[t]}},{key:\"getAllInputs\",value:function(){var t=this,e={};return Object.keys(this.input).forEach((function(n){e[n]=t.getInput(n,!0)})),e}},{key:\"setInput\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.options.inputName||this.defaultName,n=arguments.length>2?arguments[2]:void 0;this.input[e]=t,!n&&this.options.syncInstanceInputs&&this.syncInstanceInputs()}},{key:\"replaceInput\",value:function(t){this.input=t}},{key:\"setOptions\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=this.changedOptions(t);this.options=Object.assign(this.options,t),e.length&&(this.options.debug&&console.log(\"changedOptions\",e),this.onSetOptions(e),this.render())}},{key:\"changedOptions\",value:function(t){var e=this;return Object.keys(t).filter((function(n){return JSON.stringify(t[n])!==JSON.stringify(e.options[n])}))}},{key:\"onSetOptions\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];t.includes(\"layoutName\")&&this.candidateBox&&this.candidateBox.destroy(),(t.includes(\"layoutCandidatesPageSize\")||t.includes(\"layoutCandidates\"))&&this.candidateBox&&(this.candidateBox.destroy(),this.candidateBox=new E({utilities:this.utilities,options:this.options}))}},{key:\"resetRows\",value:function(){this.keyboardRowsDOM&&this.keyboardRowsDOM.remove(),this.keyboardDOM.className=this.keyboardDOMClass,this.keyboardDOM.setAttribute(\"data-skInstance\",this.currentInstanceName),this.buttonElements={}}},{key:\"dispatch\",value:function(t){if(!window.SimpleKeyboardInstances)throw console.warn(\"SimpleKeyboardInstances is not defined. Dispatch cannot be called.\"),new Error(\"INSTANCES_VAR_ERROR\");return Object.keys(window.SimpleKeyboardInstances).forEach((function(e){t(window.SimpleKeyboardInstances[e],e)}))}},{key:\"addButtonTheme\",value:function(t,e){var n=this;e&&t&&(t.split(\" \").forEach((function(r){e.split(\" \").forEach((function(e){n.options.buttonTheme||(n.options.buttonTheme=[]);var o=!1;n.options.buttonTheme.map((function(t){if(null!=t&&t.class.split(\" \").includes(e)){o=!0;var n=t.buttons.split(\" \");n.includes(r)||(o=!0,n.push(r),t.buttons=n.join(\" \"))}return t})),o||n.options.buttonTheme.push({class:e,buttons:t})}))})),this.render())}},{key:\"removeButtonTheme\",value:function(t,e){var n=this;if(!t&&!e)return this.options.buttonTheme=[],void this.render();t&&Array.isArray(this.options.buttonTheme)&&this.options.buttonTheme.length&&(t.split(\" \").forEach((function(t){var r;null===(r=n.options)||void 0===r||null===(r=r.buttonTheme)||void 0===r||r.map((function(r,o){if(r&&e&&e.includes(r.class)||!e){var i,a,s=null===(i=r)||void 0===i?void 0:i.buttons.split(\" \").filter((function(e){return e!==t}));r&&null!=s&&s.length?r.buttons=s.join(\" \"):(null===(a=n.options.buttonTheme)||void 0===a||a.splice(o,1),r=null)}return r}))})),this.render())}},{key:\"getButtonElement\",value:function(t){var e,n=this.buttonElements[t];return n&&(e=n.length>1?n:n[0]),e}},{key:\"inputPatternIsValid\",value:function(t){var e,n=this.options.inputPattern;if((e=n instanceof RegExp?n:n[this.options.inputName||this.defaultName])&&t){var r=e.test(t);return this.options.debug&&console.log('inputPattern (\"'.concat(e,'\"): ').concat(r?\"passed\":\"did not pass!\")),r}return!0}},{key:\"setEventListeners\",value:function(){if(this.isFirstKeyboardInstance||!this.allKeyboardInstances){this.options.debug&&console.log(\"Caret handling started (\".concat(this.keyboardDOMClass,\")\"));var t=this.options.physicalKeyboardHighlightPreventDefault,e=void 0!==t&&t;document.addEventListener(\"keyup\",this.handleKeyUp,e),document.addEventListener(\"keydown\",this.handleKeyDown,e),document.addEventListener(\"mouseup\",this.handleMouseUp),document.addEventListener(\"touchend\",this.handleTouchEnd),this.options.updateCaretOnSelectionChange&&document.addEventListener(\"selectionchange\",this.handleSelectionChange),document.addEventListener(\"select\",this.handleSelect)}}},{key:\"handleKeyUp\",value:function(t){this.caretEventHandler(t),this.options.physicalKeyboardHighlight&&this.physicalKeyboard.handleHighlightKeyUp(t)}},{key:\"handleKeyDown\",value:function(t){this.options.physicalKeyboardHighlight&&this.physicalKeyboard.handleHighlightKeyDown(t)}},{key:\"handleMouseUp\",value:function(t){this.caretEventHandler(t)}},{key:\"handleTouchEnd\",value:function(t){this.caretEventHandler(t)}},{key:\"handleSelect\",value:function(t){this.caretEventHandler(t)}},{key:\"handleSelectionChange\",value:function(t){navigator.userAgent.includes(\"Firefox\")||this.caretEventHandler(t)}},{key:\"caretEventHandler\",value:function(t){var e,n=this;t.target.tagName&&(e=t.target.tagName.toLowerCase()),this.dispatch((function(r){var o=t.target===r.keyboardDOM||t.target&&r.keyboardDOM.contains(t.target);if(n.options.syncInstanceInputs&&Array.isArray(t.path)&&(o=t.path.some((function(t){var e;return null==t||null===(e=t.hasAttribute)||void 0===e?void 0:e.call(t,\"data-skInstance\")}))),(\"textarea\"===e||\"input\"===e&&[\"text\",\"search\",\"url\",\"tel\",\"password\"].includes(t.target.type))&&!r.options.disableCaretPositioning){var i=t.target.selectionStart,a=t.target.selectionEnd;r.options.rtl&&(i=r.utilities.getRtlOffset(i,r.getInput()),a=r.utilities.getRtlOffset(a,r.getInput())),r.setCaretPosition(i,a),r.activeInputElement=t.target,r.options.debug&&console.log(\"Caret at: \",r.getCaretPosition(),r.getCaretPositionEnd(),t&&t.target.tagName.toLowerCase(),\"(\".concat(r.keyboardDOMClass,\")\"),null==t?void 0:t.type)}else!r.options.disableCaretPositioning&&o||\"selectionchange\"===(null==t?void 0:t.type)||(r.setCaretPosition(null),r.activeInputElement=null,r.options.debug&&console.log('Caret position reset due to \"'.concat(null==t?void 0:t.type,'\" event'),t))}))}},{key:\"recurseButtons\",value:function(t){var e=this;t&&Object.keys(this.buttonElements).forEach((function(n){return e.buttonElements[n].forEach(t)}))}},{key:\"destroy\",value:function(){this.options.debug&&console.log(\"Destroying simple-keyboard instance: \".concat(this.currentInstanceName));var t=this.options.physicalKeyboardHighlightPreventDefault,e=void 0!==t&&t;document.removeEventListener(\"keyup\",this.handleKeyUp,e),document.removeEventListener(\"keydown\",this.handleKeyDown,e),document.removeEventListener(\"mouseup\",this.handleMouseUp),document.removeEventListener(\"touchend\",this.handleTouchEnd),document.removeEventListener(\"select\",this.handleSelect),this.options.updateCaretOnSelectionChange&&document.removeEventListener(\"selectionchange\",this.handleSelectionChange),document.onpointerup=null,document.ontouchend=null,document.ontouchcancel=null,document.onmouseup=null,this.recurseButtons((function(t){t&&(t.onpointerdown=null,t.onpointerup=null,t.onpointercancel=null,t.ontouchstart=null,t.ontouchend=null,t.ontouchcancel=null,t.onclick=null,t.onmousedown=null,t.onmouseup=null,t.remove(),t=null)})),this.keyboardDOM.onpointerdown=null,this.keyboardDOM.ontouchstart=null,this.keyboardDOM.onmousedown=null,this.resetRows(),this.candidateBox&&(this.candidateBox.destroy(),this.candidateBox=null),this.activeInputElement=null,this.keyboardDOM.removeAttribute(\"data-skInstance\"),this.keyboardDOM.innerHTML=\"\",window.SimpleKeyboardInstances[this.currentInstanceName]=null,delete window.SimpleKeyboardInstances[this.currentInstanceName],this.initialized=!1}},{key:\"getButtonThemeClasses\",value:function(t){var e=this.options.buttonTheme,n=[];return Array.isArray(e)&&e.forEach((function(e){if(e&&e.class&&\"string\"==typeof e.class&&e.buttons&&\"string\"==typeof e.buttons){var r=e.class.split(\" \");e.buttons.split(\" \").includes(t)&&(n=[].concat(S(n),S(r)))}else console.warn('Incorrect \"buttonTheme\". Please check the documentation.',e)})),n}},{key:\"setDOMButtonAttributes\",value:function(t,e){var n=this.options.buttonAttributes;Array.isArray(n)&&n.forEach((function(n){n.attribute&&\"string\"==typeof n.attribute&&n.value&&\"string\"==typeof n.value?n.buttons&&\"string\"==typeof n.buttons?n.buttons.split(\" \").includes(t)&&e(n.attribute,n.value):e(n.attribute,n.value):console.warn('Incorrect \"buttonAttributes\". Please check the documentation.',n)}))}},{key:\"onTouchDeviceDetected\",value:function(){this.processAutoTouchEvents(),this.disableContextualWindow()}},{key:\"disableContextualWindow\",value:function(){window.oncontextmenu=function(t){var e;if(null!==(e=t.target.classList)&&void 0!==e&&e.contains(\"hg-button\"))return t.preventDefault(),t.stopPropagation(),!1}}},{key:\"processAutoTouchEvents\",value:function(){this.options.autoUseTouchEvents&&(this.options.useTouchEvents=!0,this.options.debug&&console.log(\"autoUseTouchEvents: Touch device detected, useTouchEvents enabled.\"))}},{key:\"onInit\",value:function(){this.options.debug&&console.log(\"\".concat(this.keyboardDOMClass,\" Initialized\")),this.setEventListeners(),\"function\"==typeof this.options.onInit&&this.options.onInit(this)}},{key:\"beforeFirstRender\",value:function(){this.utilities.isTouchDevice()&&this.onTouchDeviceDetected(),\"function\"==typeof this.options.beforeFirstRender&&this.options.beforeFirstRender(this),this.isFirstKeyboardInstance&&this.utilities.pointerEventsSupported()&&!this.options.useTouchEvents&&!this.options.useMouseEvents&&this.options.debug&&console.log(\"Using PointerEvents as it is supported by this browser\"),this.options.useTouchEvents&&this.options.debug&&console.log(\"useTouchEvents has been enabled. Only touch events will be used.\")}},{key:\"beforeRender\",value:function(){\"function\"==typeof this.options.beforeRender&&this.options.beforeRender(this)}},{key:\"onRender\",value:function(){\"function\"==typeof this.options.onRender&&this.options.onRender(this)}},{key:\"onModulesLoaded\",value:function(){\"function\"==typeof this.options.onModulesLoaded&&this.options.onModulesLoaded(this)}},{key:\"loadModules\",value:function(){var t=this;Array.isArray(this.options.modules)&&(this.options.modules.forEach((function(e){var n=t.utilities.isConstructor(e)?new e(t):e(t);n.init&&n.init(t)})),this.keyboardPluginClasses=\"modules-loaded\",this.render(),this.onModulesLoaded())}},{key:\"getModuleProp\",value:function(t,e){return!!this.modules[t]&&this.modules[t][e]}},{key:\"getModulesList\",value:function(){return Object.keys(this.modules)}},{key:\"parseRowDOMContainers\",value:function(t,e,n,r){var o=this,i=Array.from(t.children),a=0;return i.length&&n.forEach((function(n,s){var u=r[s];if(!(u&&u>n))return!1;var c=n-a,l=u-a,f=document.createElement(\"div\");f.className+=\"hg-button-container\";var p=\"\".concat(o.options.layoutName,\"-r\").concat(e,\"c\").concat(s);f.setAttribute(\"data-skUID\",p);var d=i.splice(c,l-c+1);a+=l-c,d.forEach((function(t){return f.appendChild(t)})),i.splice(c,0,f),t.innerHTML=\"\",i.forEach((function(e){return t.appendChild(e)})),o.options.debug&&console.log(\"rowDOMContainer\",d,c,l,a+1)})),t}},{key:\"render\",value:function(){var t=this;this.resetRows(),this.initialized||this.beforeFirstRender(),this.beforeRender();var e=\"hg-layout-\".concat(this.options.layoutName),n=this.options.layout||{default:[\"` 1 2 3 4 5 6 7 8 9 0 - = {bksp}\",\"{tab} q w e r t y u i o p [ ] \\\\\",\"{lock} a s d f g h j k l ; ' {enter}\",\"{shift} z x c v b n m , . / {shift}\",\".com @ {space}\"],shift:[\"~ ! @ # $ % ^ & * ( ) _ + {bksp}\",\"{tab} Q W E R T Y U I O P { } |\",'{lock} A S D F G H J K L : \" {enter}',\"{shift} Z X C V B N M < > ? {shift}\",\".com @ {space}\"]},r=this.options.useTouchEvents||!1,o=r?\"hg-touch-events\":\"\",i=this.options.useMouseEvents||!1,a=this.options.disableRowButtonContainers;this.keyboardDOM.className=this.getKeyboardClassString(this.options.theme,e,this.keyboardPluginClasses,o),this.keyboardDOM.setAttribute(\"data-skInstance\",this.currentInstanceName),this.keyboardRowsDOM=document.createElement(\"div\"),this.keyboardRowsDOM.className=\"hg-rows\",n[this.options.layoutName||this.defaultName].forEach((function(e,n){var o=e.split(\" \");t.options.excludeFromLayout&&t.options.excludeFromLayout[t.options.layoutName||t.defaultName]&&(o=o.filter((function(e){return t.options.excludeFromLayout&&!t.options.excludeFromLayout[t.options.layoutName||t.defaultName].includes(e)})));var s=document.createElement(\"div\");s.className+=\"hg-row\";var u=[],c=[];o.forEach((function(e,o){var l,f=!a&&\"string\"==typeof e&&e.length>1&&0===e.indexOf(\"[\"),p=!a&&\"string\"==typeof e&&e.length>1&&e.indexOf(\"]\")===e.length-1;f&&(u.push(o),e=e.replace(/\\[/g,\"\")),p&&(c.push(o),e=e.replace(/\\]/g,\"\"));var d=t.utilities.getButtonClass(e),h=t.utilities.getButtonDisplayName(e,t.options.display,t.options.mergeDisplay),v=t.options.useButtonTag?\"button\":\"div\",y=document.createElement(v);y.className+=\"hg-button \".concat(d),(l=y.classList).add.apply(l,S(t.getButtonThemeClasses(e))),t.setDOMButtonAttributes(e,(function(t,e){y.setAttribute(t,e)})),t.activeButtonClass=\"hg-activeButton\",!t.utilities.pointerEventsSupported()||r||i?r?(y.ontouchstart=function(n){t.handleButtonClicked(e,n),t.handleButtonMouseDown(e,n)},y.ontouchend=function(n){t.handleButtonMouseUp(e,n)},y.ontouchcancel=function(n){t.handleButtonMouseUp(e,n)}):(y.onclick=function(n){t.setMouseHold(!1),\"function\"==typeof t.options.onKeyReleased||t.options.useMouseEvents&&t.options.clickOnMouseDown||t.handleButtonClicked(e,n)},y.onmousedown=function(n){(\"function\"==typeof t.options.onKeyReleased||t.options.useMouseEvents&&t.options.clickOnMouseDown)&&!t.isMouseHold&&t.handleButtonClicked(e,n),t.handleButtonMouseDown(e,n)},y.onmouseup=function(n){t.handleButtonMouseUp(e,n)}):(y.onpointerdown=function(n){t.handleButtonClicked(e,n),t.handleButtonMouseDown(e,n)},y.onpointerup=function(n){t.handleButtonMouseUp(e,n)},y.onpointercancel=function(n){t.handleButtonMouseUp(e,n)}),y.setAttribute(\"data-skBtn\",e);var g=\"\".concat(t.options.layoutName,\"-r\").concat(n,\"b\").concat(o);y.setAttribute(\"data-skBtnUID\",g);var m=document.createElement(\"span\");m.innerHTML=h,y.appendChild(m),t.buttonElements[e]||(t.buttonElements[e]=[]),t.buttonElements[e].push(y),s.appendChild(y)})),s=t.parseRowDOMContainers(s,n,u,c),t.keyboardRowsDOM.appendChild(s)})),this.keyboardDOM.appendChild(this.keyboardRowsDOM),this.onRender(),this.initialized||(this.initialized=!0,!this.utilities.pointerEventsSupported()||r||i?r?(document.ontouchend=function(e){return t.handleButtonMouseUp(void 0,e)},document.ontouchcancel=function(e){return t.handleButtonMouseUp(void 0,e)},this.keyboardDOM.ontouchstart=function(e){return t.handleKeyboardContainerMouseDown(e)}):r||(document.onmouseup=function(e){return t.handleButtonMouseUp(void 0,e)},this.keyboardDOM.onmousedown=function(e){return t.handleKeyboardContainerMouseDown(e)}):(document.onpointerup=function(e){return t.handleButtonMouseUp(void 0,e)},this.keyboardDOM.onpointerdown=function(e){return t.handleKeyboardContainerMouseDown(e)}),this.onInit())}}],e&&C(t.prototype,e),n&&C(t,n),Object.defineProperty(t,\"prototype\",{writable:!1}),t;var t,e,n}(),T=D,N=T;return r}()},442:function(e){\"use strict\";e.exports=t}},n={};function r(t){var o=n[t];if(void 0!==o)return o.exports;var i=n[t]={exports:{}};return e[t].call(i.exports,i,i.exports,r),i.exports}r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,{a:e}),e},r.d=function(t,e){for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})};var o={};return function(){\"use strict\";r.r(o),r.d(o,{KeyboardReact:function(){return l},default:function(){return f}});r(981);var t=r(442),e=r(548),n=r.n(e);function i(t){return i=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},i(t)}function a(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function s(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?a(Object(n),!0).forEach((function(e){u(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):a(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function u(t,e,n){return(e=function(t){var e=function(t,e){if(\"object\"!=i(t)||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e||\"default\");if(\"object\"!=i(r))return r;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===e?String:Number)(t)}(t,\"string\");return\"symbol\"==i(e)?e:e+\"\"}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var c=function(t){return s(s({},t),{},{keyboardRef:null})},l=function(e){var r=e.baseClass||\"react-simple-keyboard\",o=t.useRef(null),i=t.useRef(null),a=t.useRef(null),u=t.useRef(e);return t.useEffect((function(){return function(){a.current&&a.current.destroy(),o.current=!1}}),[]),t.useEffect((function(){var t=function(t){return s(s({},t),{},{theme:\"simple-keyboard \".concat(t.theme||\"hg-theme-default\")})}(e);if(!o.current){o.current=!0,t.debug&&console.log(\"ReactSimpleKeyboard: Init\");var l=i.current,f=\".\".concat(r);a.current=new(n())(l||f,t),t.keyboardRef&&t.keyboardRef(a.current)}var p=function(t,e){var n=c(e),r=c(t);return Object.keys(n).filter((function(t){return n[t]!==r[t]}))}(u.current,t);if(p.length){var d=a.current;u.current=t,null==d||d.setOptions(t),t.debug&&console.log(\"ReactSimpleKeyboard - setOptions called due to updated props:\",p)}}),[o,r,u,e]),t.createElement(\"div\",{className:r,ref:i})},f=l}(),o}()}));","/** @jsxImportSource @emotion/react */\n\nimport { css } from \"@emotion/react\";\nimport { useEffect, useMemo, useState } from \"react\";\nimport { KeyboardReact } from \"react-simple-keyboard\";\nimport \"react-simple-keyboard/build/css/index.css\";\nimport { useComponentConfigurationContext } from \"../../core\";\n\ntype Layout =\n | \"default\"\n | \"alphanumeric\"\n | \"hex\"\n | \"num\"\n | \"shift\"\n | \"numLogin\"\n | undefined;\n\nconst keyboardStyles = (layout: Layout) => css`\n background-color: var(--ddk-component-keyboard-container-background-color);\n display: flex;\n justify-content: center;\n width: 100%;\n\n & .simple-keyboard {\n background-color: var(--ddk-component-keyboard-background-color);\n\n width: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-alphanumeric-width)\"\n : layout === \"num\" || layout === \"numLogin\"\n ? \"var(--ddk-component-keyboard-numeric-width)\"\n : layout === \"hex\"\n ? \"var(--ddk-component-keyboard-hex-width)\"\n : \"\"};\n\n height: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-alphanumeric-height)\"\n : layout === \"num\" || layout === \"numLogin\"\n ? \"var(--ddk-component-keyboard-numeric-height)\"\n : layout === \"hex\"\n ? \"var(--ddk-component-keyboard-hex-height)\"\n : \"\"};\n\n padding: var(--ddk-component-keyboard-padding);\n border-radius: 0;\n overflow: visible;\n }\n\n & .hg-theme-default {\n .hg-row {\n justify-content: center;\n }\n\n & .hg-row:not(:last-child) {\n margin-bottom: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-margin-alphanumeric)\"\n : \"var(--ddk-component-keyboard-margin-bottom)\"};\n }\n\n & .hg-row .hg-button:not(:last-child) {\n margin-right: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-margin-alphanumeric)\"\n : \"var(--ddk-component-keyboard-margin-right)\"};\n }\n }\n\n & .hg-button {\n background-color: var(\n --ddk-component-keyboard-button-background-color-default\n );\n border-color: var(--ddk-component-keyboard-button-border-color-default);\n border-style: solid;\n border-width: var(--ddk-component-keyboard-button-border-width);\n box-shadow: var(--ddk-component-keyboard-button-box-shadow);\n color: var(--ddk-component-keyboard-button-color-default);\n font-family: var(--ddk-component-keyboard-button-font-family);\n font-size: var(--ddk-component-keyboard-button-font-size);\n font-weight: var(--ddk-component-keyboard-button-font-weight);\n\n flex: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-alphanumeric-flex)\"\n : layout === \"num\" || layout === \"numLogin\"\n ? \"var(--ddk-component-keyboard-numeric-flex)\"\n : layout === \"hex\"\n ? \"var(--ddk-component-keyboard-hex-flex)\"\n : \"\"};\n\n padding: var(--ddk-component-keyboard-button-padding);\n\n &.small-button {\n height: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-small-button-height-sm)\"\n : \"var(--ddk-component-keyboard-small-button-height-sm)\"};\n width: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-small-button-width-sm)\"\n : \"var(--ddk-component-keyboard-small-button-width-md)\"};\n }\n\n &.half-button {\n width: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-half-button-width-sm)\"\n : \"var(--ddk-component-keyboard-half-button-width-md)\"};\n }\n\n &.enter-button {\n height: ${layout === \"alphanumeric\" ||\n layout === \"shift\" ||\n layout === \"hex\"\n ? \"var(--ddk-component-keyboard-small-button-height-sm)\"\n : \"var(--ddk-component-keyboard-small-button-height-md)\"};\n width: ${layout === \"alphanumeric\" ||\n layout === \"shift\" ||\n layout === \"hex\"\n ? \"var(--ddk-component-keyboard-enter-button-width-sm)\"\n : \"var(--ddk-component-keyboard-enter-button-width-md)\"};\n font-size: var(--ddk-component-keyboard-button-font-size-xs);\n font-weight: var(--ddk-component-keyboard-button-font-bold);\n }\n &.space-button {\n height: ${layout === \"alphanumeric\" || layout === \"shift\"\n ? \"var(--ddk-component-keyboard-small-button-height-sm)\"\n : \"var(--ddk-component-keyboard-small-button-height-md)\"};\n width: var(--ddk-component-keyboard-space-button-width);\n font-size: var(--ddk-component-keyboard-button-font-size-xs);\n font-weight: var(--ddk-component-keyboard-button-font-bold);\n }\n\n &.blank-button {\n visibility: hidden;\n }\n }\n`;\n\nconst buttonTheme = [\n {\n class: \"small-button\",\n buttons:\n \"1 2 3 4 5 6 7 8 9 0 Q W E R T Y U I O P A S D F G H J K L Z X C V B N M q w e r t y u i o p a s d f g h j k l z x c v b n m - , . {bksp} {empty} {lock} {shift}\",\n },\n {\n class: \"half-button\",\n buttons: \"{half}\",\n },\n {\n class: \"enter-button\",\n buttons: \"{enter}\",\n },\n {\n class: \"space-button\",\n buttons: \"{space}\",\n },\n {\n class: \"blank-button\",\n buttons: \"{empty} {half}\",\n },\n];\n\n// prettier-ignore\nconst getLayout = (mode?: \"standard\" | \"compact\") => {\n const standard = [\n \"1 2 3 4 5 6 7 8 9 0 - {bksp}\",\n \"q w e r t y u i o p\",\n \"{lock} a s d f g h j k l ' {enter}\",\n \"{shift} z x c v b n m {shift}\",\n \"{space}\",\n ];\n\n const hex = [\n \"1 2 3 A B\",\n \"4 5 6 C D\",\n \"7 8 9 E F\",\n `{bksp} 0${mode === \"standard\" ? \" {enter}\" : \"\"}`,\n ];\n\n const num = [\n \"1 2 3\",\n \"4 5 6\",\n \"7 8 9\",\n \". 0 {bksp}\",\n ];\n if (mode === \"standard\") num.push(\"{enter}\");\n\n const numLogin = [\n \"1 2 3\",\n \"4 5 6\",\n \"7 8 9\",\n \"{empty} 0 {bksp}\",\n ];\n\n const alphanumeric = [\n \"1 2 3 4 5 6 7 8 9 0 -\",\n \"q w e r t y u i o p\",\n \"a s d f g h j k l\",\n \"{shift} z x c v b n m , . {bksp}\",\n `{space}${mode === \"standard\" ? \" {enter}\" : \"\"}`,\n ];\n\n const shift = [\n \"1 2 3 4 5 6 7 8 9 0 -\",\n \"Q W E R T Y U I O P\",\n \"A S D F G H J K L\",\n \"{shift} Z X C V B N M , . {bksp}\",\n `{space}${mode === \"standard\" ? \" {enter}\" : \"\"}`,\n ];\n\n return {\n default: standard,\n hex,\n num,\n numLogin,\n alphanumeric,\n shift,\n };\n};\n\nconst display = {\n \"{bksp}\": \"<\",\n \"{enter}\": \"Enter\",\n \"{lock}\": \"Caps\",\n \"{space}\": \"Space\",\n \"{shift}\": \"^\",\n \"{empty}\": \" \",\n \"{half}\": \" \",\n};\n\ninterface KeyboardProps {\n layout?: Layout;\n onKeyPress?: (button: string) => void;\n onKeyReleased?: (button: string) => void;\n}\n\nexport const Keyboard = ({\n layout: layoutName = \"alphanumeric\",\n onKeyPress,\n onKeyReleased,\n}: KeyboardProps) => {\n const [currentLayout, setCurrentLayout] =\n useState<KeyboardProps[\"layout\"]>(layoutName);\n\n useEffect(() => {\n if (layoutName) setCurrentLayout(layoutName);\n }, [layoutName]);\n\n const handleShift = () => {\n const layoutName: KeyboardProps[\"layout\"] =\n currentLayout === \"shift\" ? \"alphanumeric\" : \"shift\";\n setCurrentLayout(layoutName);\n };\n\n const keyPress = (button: string) => {\n if (button === \"{shift}\") handleShift();\n onKeyPress?.(button);\n };\n\n const keyReleased = (button: string) => {\n onKeyReleased?.(button);\n };\n\n const { componentModeOverride } = useComponentConfigurationContext();\n\n const layout = useMemo(\n () => getLayout(componentModeOverride),\n [componentModeOverride]\n );\n\n return (\n <div css={keyboardStyles(currentLayout)}>\n <KeyboardReact\n buttonTheme={buttonTheme}\n display={display}\n layout={layout}\n layoutName={currentLayout ?? \"default\"}\n onKeyPress={keyPress}\n onKeyReleased={keyReleased}\n />\n </div>\n );\n};\n","/** @jsxImportSource @emotion/react */\n\nimport { css } from \"@emotion/react\";\nimport styled from \"@emotion/styled\";\nimport { useKosTranslation } from \"@kosdev-code/kos-ui-sdk\";\nimport {\n useCallback,\n useEffect,\n useRef,\n useState,\n type ReactNode,\n} from \"react\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport {\n ActionItemButton,\n Button,\n Card,\n Description,\n ErrorText,\n Input,\n Text,\n TextContainer,\n type CardProps,\n type UnitStyle,\n} from \"../../styles\";\nimport { CompactCloseButton } from \"../compact-close-button\";\nimport { Keyboard } from \"../keyboard\";\nimport { Header, Modal } from \"../modal\";\n\nconst inputCardStyles = css`\n font-family: var(--ddk-component-input-action-item-font-family);\n width: 100%;\n`;\n\nconst Container = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-modal-content-padding);\n height: 100%;\n`;\n\nconst InputWrapper = styled.div`\n display: flex;\n flex-direction: column;\n height: 100%;\n justify-content: space-between;\n gap: var(--ddk-component-modal-content-gap);\n`;\n\nconst KeyboardWrapper = styled.div`\n display: flex;\n flex-direction: column;\n justify-content: center;\n gap: 16px;\n`;\n\nconst ContentWrapper = styled.div`\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n margin: 0 auto;\n padding: var(--ddk-component-input-card-input-padding);\n text-align: center;\n width: var(--ddk-component-input-card-input-width);\n`;\n\nconst InputPostContainer = styled.div`\n align-items: baseline;\n display: flex;\n gap: 8px;\n flex-shrink: 0;\n\n & span {\n color: var(\"--ddk-component-card-color-light\");\n font-size: 16px;\n white-space: nowrap;\n }\n`;\n\nexport interface InputCardProps extends CardProps {\n closeButtonLabel?: string;\n collapse?: boolean;\n description?: string;\n disabled?: boolean;\n float?: boolean;\n label: string;\n layout?: \"default\" | \"hex\" | \"num\" | \"alphanumeric\";\n maxLength?: number;\n onChange?: (value?: string) => void;\n isValid?: (input?: string) => string | undefined;\n isInputValid?: (input?: string) => boolean;\n submitLabel?: ReactNode;\n unitStyle?: UnitStyle;\n unitValue?: string;\n value?: string;\n}\n\nexport const InputCard = ({\n closeButtonLabel,\n collapse,\n description,\n disabled,\n label,\n layout,\n maxLength,\n onChange,\n isValid,\n isInputValid,\n submitLabel = \"Submit\",\n unitStyle,\n unitValue,\n value,\n ...props\n}: InputCardProps) => {\n const [open, setOpen] = useState(false);\n const [closing, setClosing] = useState(false);\n const [inputValue, setInputValue] = useState(value);\n const [error, setError] = useState<string | undefined>();\n const inputRef = useRef<HTMLInputElement>(null);\n\n const { componentModeOverride } = useComponentConfigurationContext();\n\n useEffect(() => {\n setInputValue(value);\n }, [value]);\n\n const defaultIsInputValid = () => true;\n const inputValid = isInputValid || defaultIsInputValid;\n const maxLengthValid = useCallback(() => {\n if (inputValue === undefined || maxLength === undefined) return true;\n if (inputValue.length < maxLength) return true;\n\n return false;\n }, [inputValue, maxLength]);\n\n const submit = () => {\n const error = isValid && isValid(inputValue);\n if (error) {\n setError(error);\n return;\n }\n\n setInputValue(inputValue);\n onChange?.(inputValue);\n setClosing(true);\n };\n\n const onKeyUp = (button: string) => {\n setError(undefined);\n\n switch (button) {\n case \"{bksp}\":\n setInputValue((value) => {\n const string = String(value);\n return string?.slice(0, string.length - 1);\n });\n break;\n case \"{enter}\":\n submit();\n break;\n case \"{space}\": {\n if (!maxLengthValid() || !inputValid()) return;\n setInputValue((value) => value + \" \");\n break;\n }\n case \"{shift}\":\n return;\n default: {\n if (!maxLengthValid() || !inputValid()) return;\n setInputValue((value) => (!value ? button : value + button));\n\n if (inputRef.current)\n inputRef.current.scrollLeft = inputRef.current.scrollWidth;\n }\n }\n };\n\n return (\n <Card collapse={collapse ?? componentModeOverride === \"compact\"} {...props}>\n <TextContainer>\n <Text>{label}</Text>\n {description && <Description>{description}</Description>}\n </TextContainer>\n <InputPostContainer>\n <ActionItemButton\n css={inputCardStyles}\n disabled={disabled}\n onPointerDown={() => {\n if (!disabled) {\n setOpen(true);\n setClosing(false);\n }\n }}\n unitStyle={unitStyle}\n unitValue={unitValue}\n >\n {value}\n </ActionItemButton>\n </InputPostContainer>\n {open && (\n <Modal\n show={!closing}\n onClose={() => setClosing(true)}\n onClosed={() => {\n setOpen(false);\n setError(undefined);\n setInputValue(value);\n }}\n contain={componentModeOverride !== \"compact\"}\n >\n <Container>\n <Header\n CloseButton={\n componentModeOverride === \"compact\"\n ? CompactCloseButton\n : undefined\n }\n closeButtonLabel={closeButtonLabel}\n onClose={() => setClosing(true)}\n showCloseButton\n title={label}\n />\n <InputWrapper>\n <ContentWrapper>\n {error && <ErrorText children={error} />}\n\n <Input\n ref={inputRef}\n type=\"text\"\n value={inputValue}\n readOnly\n isError={!!error}\n />\n </ContentWrapper>\n <KeyboardWrapper>\n {componentModeOverride === \"compact\" && (\n <ContentWrapper>\n <Button\n disabled={!!error}\n mode=\"primary\"\n onPointerDown={submit}\n >\n {submitLabel}\n </Button>\n </ContentWrapper>\n )}\n <Keyboard layout={layout} onKeyPress={onKeyUp} />\n </KeyboardWrapper>\n </InputWrapper>\n </Container>\n </Modal>\n )}\n </Card>\n );\n};\n\nconst SubmitText = () => {\n const { t } = useKosTranslation(\"common\");\n\n return t(\"submit\");\n};\n\nexport const InputCardContainer = ({\n submitLabel,\n ...props\n}: InputCardProps) => (\n <InputCard submitLabel={submitLabel ?? <SubmitText />} {...props} />\n);\n\nexport const ErrorInputCard = styled(InputCard)`\n --ddk-component-input-card-description-color: var(\n --ddk-semantic-color-system-red\n );\n`;\n","/** @jsxImportSource @emotion/react */\n\nimport { useKosTranslation } from \"@kosdev-code/kos-ui-sdk\";\nimport { useCallback } from \"react\";\nimport { InputCard, type InputCardProps } from \"../input-card\";\n\nexport interface InputRangeCardProps extends InputCardProps {\n maxValue: number;\n maxValueValidationText?: string;\n minValue: number;\n minValueValidationText?: string;\n}\n\nexport const InputRangeCard = ({\n maxValue,\n maxValueValidationText,\n minValue,\n minValueValidationText,\n ...props\n}: InputRangeCardProps) => {\n const isValid = useCallback(\n (inputValue) => {\n if (Number(inputValue) < minValue) {\n return minValueValidationText;\n } else if (Number(inputValue) > maxValue) {\n return maxValueValidationText;\n } else {\n return undefined;\n }\n },\n [maxValue, maxValueValidationText, minValue, minValueValidationText]\n );\n\n return <InputCard {...props} isValid={isValid} unitStyle=\"inline\" />;\n};\n\nexport const InputRangeCardContainer = ({\n maxValue,\n minValue,\n ...props\n}: Omit<InputRangeCardProps, \"minValueValidationText\">) => {\n const { t } = useKosTranslation(\"common\", { keyPrefix: \"validation\" });\n\n return (\n <InputRangeCard\n maxValue={maxValue}\n maxValueValidationText={t(\"maxValue\", { data: { maxValue } })}\n minValue={minValue}\n minValueValidationText={t(\"minValue\", { data: { minValue } })}\n {...props}\n />\n );\n};\n","import styled from \"@emotion/styled\";\nimport { EyeOffIcon, EyeOpenIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport { useState } from \"react\";\nimport { Input, InputProps } from \"../../styles/input/input\";\n\nconst InputGroup = styled.div`\n position: relative;\n\n svg {\n position: absolute;\n top: 5px;\n right: 24px;\n width: 32px;\n height: 32px;\n }\n input {\n width: 100%;\n }\n`;\n\ninterface InputTypePasswordProps extends InputProps {\n style?: React.CSSProperties;\n}\n\nexport const InputTypePassword = ({\n style,\n ...props\n}: InputTypePasswordProps) => {\n const [showPassword, setShowPassword] = useState(false);\n\n const toggleShowPassword = () => {\n setShowPassword(!showPassword);\n };\n\n return (\n <InputGroup style={style}>\n <Input {...props} readOnly type={showPassword ? \"text\" : \"password\"} />\n {!showPassword ? (\n <EyeOpenIcon onPointerDown={toggleShowPassword} />\n ) : (\n <EyeOffIcon onPointerDown={toggleShowPassword} />\n )}\n </InputGroup>\n );\n};\n","/** @jsxImportSource @emotion/react */\n\nimport { css } from \"@emotion/react\";\nimport { Dial, DialItem, DialItemRenderer } from \"../dial\";\nimport { useCallback } from \"react\";\n\nconst multiDialStyles = css`\n align-self: stretch;\n display: flex;\n`;\n\nexport interface DialConfiguration<T> {\n id: string;\n className?: string;\n itemRenderer?: DialItemRenderer<T>;\n items?: DialItem<T>[];\n loop?: boolean;\n selectedItemId?: T;\n}\n\nexport interface MultiDialProps<T> {\n className?: string;\n dials: DialConfiguration<T>[];\n enableAnimation?: boolean;\n itemSize?: number;\n numberOfVisibleItems?: number;\n onChange?: (dial: string, dialItem: DialItem<T>) => void;\n selectedItemOffset?: number;\n}\n\nexport const MultiDial = <T,>({\n className,\n dials,\n enableAnimation,\n itemSize = 20,\n numberOfVisibleItems = 7,\n onChange,\n selectedItemOffset,\n}: MultiDialProps<T>) => {\n const onChangeHandler = useCallback(\n (id: string) => (dialItem: DialItem<T>) => {\n onChange?.(id, dialItem);\n },\n [onChange]\n );\n\n return (\n <div css={multiDialStyles} className={className}>\n {dials.map(\n ({ id, className, itemRenderer, items, loop, selectedItemId }) => (\n <Dial<T>\n key={id}\n className={className}\n enableAnimation={enableAnimation}\n itemRenderer={itemRenderer}\n items={items}\n itemSize={itemSize}\n loop={loop}\n numberOfVisibleItems={numberOfVisibleItems}\n onChange={onChangeHandler(id)}\n selectedItemId={selectedItemId}\n selectedItemOffset={selectedItemOffset}\n />\n )\n )}\n </div>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { DialItemRendererProps } from \"../dial\";\n\nexport type PickerItemRendererProps<T> = DialItemRendererProps<T>;\n\nexport const PickerItemRenderer = styled.div<PickerItemRendererProps<any>>`\n color: ${(props) =>\n props.selected\n ? \"var(--ddk-component-picker-list-item-color-active)\"\n : \"var(--ddk-component-picker-list-item-color-default)\"};\n\n flex: 1;\n font-family: var(--ddk-component-picker-list-item-font-family);\n font-size: var(--ddk-component-picker-list-item-font-size);\n font-weight: var(--ddk-component-picker-list-item-font-weight);\n letter-spacing: var(--ddk-component-picker-list-item-letter-spacing);\n transition: initial; // color 250ms;\n line-height: var(--ddk-component-picker-list-item-line-height);\n`;\n","/** @jsxImportSource @emotion/react */\n\nimport { css } from \"@emotion/react\";\nimport { DialConfiguration, MultiDial, MultiDialProps } from \"../multi-dial\";\nimport { PickerItemRenderer } from \"../picker-item-renderer\";\n\nconst multiPickerStyle = css`\n border-color: var(--ddk-component-picker-border-color) transparent;\n border-style: solid;\n border-width: var(--ddk-component-picker-border-width);\n justify-content: center;\n overflow: hidden;\n padding: var(--ddk-component-picker-padding);\n text-align: center;\n\n & .separator {\n border-left-color: var(--ddk-component-picker-border-color);\n border-left-width: var(--ddk-component-picker-border-width);\n border-left-style: solid;\n\n &:last-child {\n border-right-color: var(--ddk-component-picker-border-color);\n border-right-width: var(--ddk-component-picker-border-width);\n border-right-style: solid;\n }\n }\n`;\n\nconst VISIBLE_ITEMS_MAX = 13;\n\nexport type MultiPickerProps<T> = MultiDialProps<T>;\n\nexport const MultiPicker = <T,>({ dials, ...props }: MultiPickerProps<T>) => {\n const multiPickerDials: DialConfiguration<T>[] = dials.map((dial) => {\n return {\n ...dial,\n className: \"separator\",\n itemRenderer: PickerItemRenderer,\n };\n });\n\n let { numberOfVisibleItems, selectedItemOffset } = props;\n\n const itemsLength = dials.reduce<number>(\n (previousValue, currentValue) =>\n Math.max(previousValue, currentValue.items?.length || 0),\n 0\n );\n\n if (numberOfVisibleItems === undefined)\n numberOfVisibleItems =\n itemsLength >= VISIBLE_ITEMS_MAX ? VISIBLE_ITEMS_MAX : itemsLength || 0;\n\n if (selectedItemOffset === undefined)\n selectedItemOffset = Math.floor(numberOfVisibleItems * 0.5);\n\n return (\n <MultiDial<T>\n itemSize={40}\n {...props}\n css={multiPickerStyle}\n dials={multiPickerDials}\n numberOfVisibleItems={numberOfVisibleItems}\n selectedItemOffset={selectedItemOffset}\n />\n );\n};\n","import { useCallback, useEffect, useState } from \"react\";\nimport { Card, Description, Error, Text, TextContainer } from \"../../styles\";\nimport { Dropdown } from \"../dropdown\";\nimport { CancelProceedFooter, Content, Header, Modal } from \"../modal\";\nimport { MultiPicker } from \"../multi-picker\";\nimport { DialConfiguration } from \"../multi-dial\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { CompactCloseButton } from \"../compact-close-button\";\n\nexport interface SelectedIds<T> {\n [key: string]: T;\n}\n\nexport interface MultiPickerItem<T> {\n id: T;\n label: string;\n [key: string]: unknown;\n}\n\nexport interface MultiPickerCardProps<T> {\n cancelButtonLabel?: string;\n className?: string;\n closeButtonLabel?: string;\n data: DialConfiguration<T>[];\n description?: string;\n descriptionAsError?: boolean;\n disabled?: boolean;\n displayValue?: string;\n enableAnimation?: boolean;\n float?: boolean;\n icon?: React.FunctionComponent;\n label?: string;\n modalTitle?: string;\n onChange?: (id: string, pickerItem: MultiPickerItem<T>) => void;\n onDiscard?: () => void;\n onSave?: (selectedIds: SelectedIds<T>) => void;\n proceedButtonLabel?: string;\n selectedItemOffset?: number;\n}\n\nconst dataReducer = (data) =>\n data.reduce((previousValue, currentValue) => {\n return {\n ...previousValue,\n [currentValue.id]: currentValue.selectedItemId,\n };\n }, {});\n\nexport const MultiPickerCard = <T,>({\n cancelButtonLabel,\n className,\n closeButtonLabel,\n data,\n description,\n descriptionAsError = false,\n disabled,\n displayValue,\n enableAnimation,\n float,\n icon: Icon,\n label,\n modalTitle,\n onChange,\n onDiscard,\n onSave,\n proceedButtonLabel,\n selectedItemOffset,\n}: MultiPickerCardProps<T>) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n const [open, setOpen] = useState(false);\n\n const [selectedIds, setSelectedIds] = useState<SelectedIds<T>>(\n dataReducer(data)\n );\n\n const multiPickerOnChange = useCallback(\n (id: string, pickerItem: MultiPickerItem<T>) => {\n setSelectedIds({ ...selectedIds, [String(id)]: pickerItem.id });\n onChange?.(id, pickerItem);\n },\n [onChange, selectedIds]\n );\n\n const cancelProceedFooterOnSave = () => {\n onSave?.(selectedIds);\n setOpen(false);\n };\n\n const discardChanges = () => {\n onDiscard?.();\n setOpen(false);\n };\n\n useEffect(() => {\n setSelectedIds(dataReducer(data));\n }, [open, data]);\n\n return (\n <>\n <Card\n className={className}\n collapse={componentModeOverride === \"compact\"}\n float={float}\n >\n {(label || description) && (\n <TextContainer>\n {label && <Text>{label}</Text>}\n {description && descriptionAsError ? (\n <Error>{description}</Error>\n ) : (\n description && <Description>{description}</Description>\n )}\n </TextContainer>\n )}\n <Dropdown\n onPointerDown={() => !disabled && setOpen(true)}\n Icon={Icon}\n disabled={disabled}\n >\n {displayValue}\n </Dropdown>\n </Card>\n {open && (\n <Modal\n show={open}\n onClose={() => discardChanges()}\n contain={componentModeOverride !== \"compact\"}\n >\n <Header\n title={modalTitle || label}\n showCloseButton\n onClose={() => discardChanges()}\n closeButtonLabel={closeButtonLabel}\n CloseButton={\n componentModeOverride === \"compact\"\n ? CompactCloseButton\n : undefined\n }\n />\n <Content>\n <MultiPicker<T>\n dials={data}\n enableAnimation={enableAnimation}\n onChange={multiPickerOnChange}\n selectedItemOffset={selectedItemOffset}\n />\n </Content>\n <CancelProceedFooter\n cancelLabel={cancelButtonLabel}\n proceedLabel={proceedButtonLabel}\n onProceed={cancelProceedFooterOnSave}\n onCancel={() => discardChanges()}\n />\n </Modal>\n )}\n </>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { useKosDateFormats, useKosTimeFormats } from \"@kosdev-code/kos-ui-sdk\";\nimport { format } from \"date-fns\";\nimport type { ReactNode } from \"react\";\nimport { BodyMedium, Button, Card, LabelDateInformation } from \"../../styles\";\n\nconst Container = styled(Card)`\n display: flex;\n min-height: var(--ddk-component-notification-card-height);\n gap: 16px;\n`;\n\ntype IndicatorType = {\n color?: string | undefined;\n};\n\nconst Indicator = styled.div<IndicatorType>`\n background-color: ${(props) =>\n props.color\n ? props.color\n : \"var(--ddk-component-notification-card-indicator-color)\"};\n border-radius: 50%;\n flex-shrink: 0;\n height: var(--ddk-component-notification-card-indicator-size);\n width: var(--ddk-component-notification-card-indicator-size);\n`;\n\nconst TextContainer = styled.div`\n align-items: center;\n display: flex;\n flex-direction: row;\n flex: 1;\n gap: var(--ddk-component-notification-card-gap);\n word-wrap: break-word;\n`;\n\nconst DateContainer = styled(LabelDateInformation)`\n box-sizing: border-box;\n white-space: nowrap;\n flex: 0 0 var(--ddk-component-notification-card-date-size);\n`;\n\nconst ButtonContainer = styled.div`\n align-items: center;\n display: flex;\n justify-content: flex-end;\n flex: 0 0 var(--ddk-component-notification-card-action-size);\n`;\n\nconst InfoText = styled(BodyMedium)`\n min-width: var(--ddk-component-button-min-width);\n text-align: center;\n`;\n\ntype NotificationCardType = {\n buttonLabel?: string;\n date?: string;\n dateLabel?: ReactNode;\n indicatorColor?: string;\n label?: string;\n onAction?: () => void;\n prefix?: ReactNode;\n};\n\nexport const NotificationCard = ({\n buttonLabel,\n indicatorColor,\n label,\n prefix,\n dateLabel,\n onAction,\n}: NotificationCardType) => (\n <Container>\n <TextContainer>\n <Indicator color={indicatorColor} />\n {prefix}\n <BodyMedium>{label}</BodyMedium>\n </TextContainer>\n <DateContainer>{dateLabel}</DateContainer>\n <ButtonContainer>\n {onAction && buttonLabel ? (\n <Button onPointerDown={onAction}>{buttonLabel}</Button>\n ) : (\n <InfoText>{buttonLabel}</InfoText>\n )}\n </ButtonContainer>\n </Container>\n);\n\nexport const NotificationCardContainer = ({\n date,\n ...props\n}: Omit<NotificationCardType, \"dateLabel\">) => {\n const displayDate = date ?? Date.now();\n const { selectedDateFormat } = useKosDateFormats();\n const { selectedTimeFormat } = useKosTimeFormats();\n const fDate = selectedDateFormat\n ? format(new Date(displayDate), selectedDateFormat)\n : \"\";\n const fTime = selectedTimeFormat\n ? format(new Date(displayDate), selectedTimeFormat)\n : \"\";\n const formattedDate = [fDate, fTime].map((s, index) => (\n <div key={index === 0 ? \"date\" : \"time\"}>{s}</div>\n ));\n\n return <NotificationCard dateLabel={formattedDate} {...props} />;\n};\n","import styled from \"@emotion/styled\";\nimport { Footer, Header, Modal } from \"../modal\";\nimport { Button, Input } from \"../../styles\";\nimport { Keyboard } from \"../keyboard\";\nimport { useState } from \"react\";\n\nconst CardTitle = styled.div`\n display: flex;\n justify-content: center;\n font-weight: var(--ddk-component-Numpad-head-font-weight-medium);\n`;\n\nconst NumpadContent = styled.div`\n display: flex;\n flex-direction: column;\n width: 100%;\n align-items: center;\n gap: var(--ddk-component-Numpad-content-gap-large);\n input {\n width: 400px;\n }\n`;\n\ninterface NumPadProps {\n heading: string;\n onComplete?: () => void;\n}\n\nexport const Numpad = ({ onComplete, heading }: NumPadProps) => {\n const [closing, setClosing] = useState(false);\n const [inputValue, setInputValue] = useState(\"\");\n\n const inputType = async (button: string) => {\n switch (button) {\n case \"{bksp}\":\n setInputValue((value) => value?.slice(0, value.length - 1));\n break;\n default:\n setInputValue((value) => value + button);\n }\n };\n\n const keyReleased = (button: string) => {\n if (\n inputValue &&\n inputValue?.length < 0 &&\n button !== \"{bksp}\" &&\n button !== \"{enter}\"\n ) {\n return;\n } else {\n inputType(button);\n }\n };\n\n return (\n <Modal\n show={!closing}\n onClose={() => setClosing(true)}\n onClosed={onComplete}\n >\n <Header\n closeButtonLabel={\"close\"}\n title={<CardTitle>{heading}</CardTitle>}\n showCloseButton\n onClose={() => setClosing(true)}\n />\n <NumpadContent>\n <Input value={inputValue} />\n <Keyboard layout=\"numLogin\" onKeyReleased={keyReleased} />\n </NumpadContent>\n <Footer>\n <Button>Discard</Button>\n <Button>Save</Button>\n </Footer>\n </Modal>\n );\n};\n","/** @jsxImportSource @emotion/react */\n\nimport { css } from \"@emotion/react\";\nimport { Dial, DialItem, DialProps } from \"../dial\";\nimport { PickerItemRenderer } from \"../picker-item-renderer\";\n\nconst pickerStyle = css`\n border-color: var(--ddk-component-picker-border-color) transparent;\n border-style: solid;\n border-width: var(--ddk-component-picker-border-width);\n overflow: hidden;\n text-align: center;\n`;\n\nexport interface PickerProps<T> extends DialProps<T> {\n pickerWidthSizeInPercentage?: number;\n}\nexport type PickerItem<T> = DialItem<T>;\n\nexport const Picker = <T,>(props: PickerProps<T>) => (\n <Dial<T>\n itemRenderer={PickerItemRenderer}\n itemSize={40}\n offset={true}\n {...props}\n css={pickerStyle}\n />\n);\n","import { useState } from \"react\";\nimport { Card } from \"../../styles\";\nimport { Dropdown } from \"../dropdown\";\nimport { CancelProceedFooter, Content, Header, Modal } from \"../modal\";\nimport { Picker, PickerItem } from \"../picker\";\nimport { DialItem } from \"../dial\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { CompactCloseButton } from \"../compact-close-button\";\nimport styled from \"@emotion/styled\";\n\nconst Container = styled.div`\n display: flex;\n flex-direction: column;\n padding: var(--ddk-component-picker-padding);\n gap: var(--ddk-component-picker-gap);\n height: 100%;\n`;\n\nexport interface PickerCardProps<T> {\n cancelButtonLabel?: string;\n closeButtonLabel?: string;\n collapse?: boolean;\n disabled?: boolean;\n displayValue?: string;\n enableAnimation?: boolean;\n float?: boolean;\n items?: PickerItem<T>[];\n label: string;\n loop?: boolean;\n numberOfVisibleItems?: number;\n onSave?: (id: T) => void;\n proceedButtonLabel?: string;\n selectedItemId?: T;\n selectedItemOffset?: number;\n unitValue?: string;\n}\n\nexport const PickerCard = <T,>({\n cancelButtonLabel,\n closeButtonLabel,\n collapse,\n disabled,\n displayValue,\n enableAnimation,\n items,\n label,\n loop,\n numberOfVisibleItems,\n onSave,\n proceedButtonLabel,\n selectedItemId,\n selectedItemOffset,\n unitValue,\n ...props\n}: PickerCardProps<T>) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n const [open, setOpen] = useState(false);\n const [saveSelectedIdValue, setSaveSelectedIdValue] = useState<T>();\n\n const pickerOnChange = ({ id }: DialItem<T>) => {\n setSaveSelectedIdValue(id);\n };\n\n const cancelProceedFooterOnSave = () => {\n if (saveSelectedIdValue !== undefined) onSave?.(saveSelectedIdValue);\n\n setOpen(false);\n };\n\n return (\n <Card collapse={collapse ?? componentModeOverride === \"compact\"} {...props}>\n {label}\n\n <Dropdown\n disabled={disabled}\n onPointerDown={() => !disabled && setOpen(true)}\n unitValue={unitValue}\n >\n {displayValue}\n </Dropdown>\n\n <Modal\n show={open}\n onClose={() => setOpen(false)}\n contain={componentModeOverride !== \"compact\"}\n >\n <Header\n title={label}\n showCloseButton\n onClose={() => setOpen(false)}\n closeButtonLabel={closeButtonLabel}\n CloseButton={\n componentModeOverride === \"compact\" ? CompactCloseButton : undefined\n }\n />\n <Container>\n <Content>\n <Picker<T>\n enableAnimation={enableAnimation}\n items={items}\n loop={loop}\n numberOfVisibleItems={numberOfVisibleItems}\n onChange={pickerOnChange}\n selectedItemId={selectedItemId}\n selectedItemOffset={selectedItemOffset}\n />\n </Content>\n <CancelProceedFooter\n cancelLabel={cancelButtonLabel}\n proceedLabel={proceedButtonLabel}\n onProceed={cancelProceedFooterOnSave}\n onCancel={() => setOpen(false)}\n />\n </Container>\n </Modal>\n </Card>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { ElementType, ReactNode } from \"react\";\n\ninterface PlaceholderMessageProps {\n icon: ElementType;\n children: ReactNode;\n}\n\nconst Text = styled.div`\n font-size: var(--ddk-generic-font-size-large);\n font-weight: var(--ddk-generic-font-weight-medium);\n color: var(--ddk-generic-color-grey-100);\n`;\n\nexport const PlaceholderMessage = ({\n children,\n icon: Icon,\n}: PlaceholderMessageProps) => (\n <>\n <Icon />\n <Text>{children}</Text>\n </>\n);\n","import { ReactNode } from \"react\";\nimport { createPortal } from \"react-dom\";\n\ninterface PortalProps {\n children: ReactNode;\n}\n\nexport const Portal = ({ children }: PortalProps) =>\n createPortal(children, document.body);\n","import styled from \"@emotion/styled\";\nimport { useEffect, useState, type ReactNode } from \"react\";\nimport { createPortal } from \"react-dom\";\n\nconst Container = styled.div`\n align-items: center;\n background-color: var(--ddk-component-status-bar-container-background-color);\n bottom: 0;\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n left: 0;\n padding: var(--ddk-component-status-bar-container-padding);\n position: fixed;\n right: 0;\n top: 0;\n z-index: 10;\n max-width: var(--ddk-component-shell-max-width);\n`;\n\nconst Content = styled.div`\n background: var(--ddk-component-status-bar-background-color);\n border-radius: var(--ddk-component-status-bar-border-radius);\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-status-bar-gap);\n padding: var(--ddk-component-status-bar-padding);\n width: var(--ddk-component-status-bar-width);\n pointer-events: auto;\n`;\n\nexport interface StatusBarProps {\n blocked?: boolean;\n children: ReactNode;\n onClose?: () => void;\n show?: boolean;\n}\n\nexport const StatusBar = ({\n blocked = true,\n children,\n onClose,\n show,\n}: StatusBarProps) => {\n const [isShow, setIsShow] = useState(true);\n\n useEffect(() => {\n setIsShow(!!show);\n }, [show]);\n\n if (!isShow) return null;\n\n return createPortal(\n <Container\n style={{ pointerEvents: blocked ? \"auto\" : \"none\" }}\n onPointerDown={onClose}\n >\n <Content>{children}</Content>\n </Container>,\n document.body\n );\n};\n","import styled from \"@emotion/styled\";\nimport { useKosTranslation } from \"@kosdev-code/kos-ui-sdk\";\nimport { ReactNode, type FunctionComponent } from \"react\";\nimport { Button } from \"../../styles\";\nimport { StatusBar, type StatusBarProps } from \"../status-bar\";\n\nconst ProgressBarTitleContainer = styled.div`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-progress-bar-title-container-gap);\n`;\n\nexport const ProgressBarTitle = styled.div`\n color: var(--ddk-component-progress-bar-title-color);\n font-size: var(--ddk-component-progress-bar-title-font-size);\n font-weight: var(--ddk-component-progress-bar-title-font-weight);\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n`;\n\nexport const ProgressBarSubTitle = styled(ProgressBarTitle)`\n color: var(--ddk-component-progress-bar-subtitle-color);\n font-size: var(--ddk-component-progress-bar-subtitle-font-size);\n font-weight: var(--ddk-component-progress-bar-subtitle-font-weight);\n`;\n\nexport const ProgressFillContainer = styled.div`\n align-items: var(\n --ddk-component-progress-bar-progress-fill-container-align-items\n );\n display: flex;\n flex-direction: var(\n --ddk-component-progress-bar-progress-fill-container-flex-direction\n );\n gap: var(--ddk-component-progress-bar-progress-fill-container-gap);\n width: 100%;\n`;\n\nexport const ProgressFill = styled.div<{ value: number }>`\n align-items: flex-start;\n background: var(--ddk-generic-color-grey-80, #292929);\n background: ${(props) =>\n `linear-gradient(to right, var(--ddk-component-progress-bar-progress-fill-color) ${props.value}%, var(--ddk-component-progress-bar-progress-fill-background-color) ${props.value}%)`};\n border-radius: var(--ddk-component-progress-bar-progress-fill-border-radius);\n border: var(--ddk-component-progress-bar-progress-fill-border);\n display: flex;\n flex-direction: column;\n flex: 1 0 var(--ddk-component-progress-bar-progress-fill-height);\n gap: 10px;\n height: var(--ddk-component-progress-bar-progress-fill-height);\n justify-content: center;\n width: 100%;\n`;\n\nexport type ProgressStatus =\n | \"cancelled\"\n | \"failure\"\n | \"in-progress\"\n | \"success\";\n\ninterface ProgressBarProps extends Omit<StatusBarProps, \"children\"> {\n blocked?: boolean;\n cancelLabel?: string;\n isCancelable?: boolean;\n onCancel?: () => void;\n renderCancel?: ReactNode;\n renderFailure?: ReactNode;\n renderSuccess?: ReactNode;\n status?: ProgressStatus;\n subtitle?: string;\n title: ReactNode;\n value: number;\n}\n\nexport const ProgressBar: FunctionComponent<ProgressBarProps> = ({\n blocked,\n cancelLabel = \"Cancel\",\n isCancelable,\n onCancel,\n onClose,\n renderCancel,\n renderFailure,\n renderSuccess,\n show,\n status,\n subtitle,\n title,\n value,\n}) => {\n // Often when a future begins, it's progress will start at \"1\", then set to\n // \"0\" and rise to \"100\" as expected. To avoid the progress bar from\n // rendering the hiccup, we can anchor \"1\" to \"0\" which avoids displaying a\n // visual indicator and then disappearing immediately...\n const displayValue = value <= 1 ? 0 : value;\n\n const content =\n renderSuccess && status === \"success\" ? (\n renderSuccess\n ) : renderFailure && status === \"failure\" ? (\n renderFailure\n ) : renderCancel && status === \"cancelled\" ? (\n renderCancel\n ) : (\n <>\n <ProgressBarTitleContainer>\n <ProgressBarTitle>{title}</ProgressBarTitle>\n {subtitle && <ProgressBarSubTitle>{subtitle}</ProgressBarSubTitle>}\n </ProgressBarTitleContainer>\n <ProgressFillContainer>\n <ProgressFill value={displayValue}></ProgressFill>\n {isCancelable && (\n <Button onPointerDown={onCancel}>{cancelLabel}</Button>\n )}\n </ProgressFillContainer>\n </>\n );\n\n return (\n <StatusBar blocked={blocked} onClose={onClose} show={show}>\n {content}\n </StatusBar>\n );\n};\n\nexport const ProgressBarContainer = (\n props: Omit<ProgressBarProps, \"cancelLabel\">\n) => {\n const { t } = useKosTranslation(\"common\");\n\n return <ProgressBar cancelLabel={t(\"cancel\")} {...props} />;\n};\n","import styled from \"@emotion/styled\";\n\nimport { useEffect, useState } from \"react\";\nimport { ActionItemButton } from \"../../styles\";\n\nexport type RadioValue = number | string;\n\nexport interface RadioActiveProps {\n active?: boolean;\n}\n\nconst RadioCardBox = styled(ActionItemButton)`\n align-items: center;\n\n background-color: ${(props) =>\n props.active\n ? \"var(--ddk-component-radio-card-background-color-active)\"\n : \"var(--ddk-component-radio-card-background-color)\"};\n\n border: ${(props) =>\n props.active\n ? \"1px solid var(--ddk-component-radio-card-border-color-active)\"\n : \"1px solid var(--ddk-component-radio-card-border-color-default)\"};\n\n display: flex;\n flex: 1 0 0;\n height: 56px;\n justify-content: center;\n padding: 17px 12px;\n`;\n\nexport interface RadioButtonsProps {\n id: string | number;\n title: string | number;\n}\ninterface RadioCardProps {\n radioButtons: RadioButtonsProps[];\n onChange?: (value: RadioValue) => void;\n value?: RadioValue;\n}\nexport const RadioCard = ({\n radioButtons,\n onChange,\n value,\n}: RadioCardProps) => {\n const [radioValue, setRadioValue] = useState(value);\n\n useEffect(() => {\n setRadioValue(value);\n }, [value]);\n\n const onPointerDown = (id: RadioValue) => {\n if (id === radioValue) return;\n setRadioValue(id);\n onChange?.(id);\n };\n return (\n <>\n {radioButtons.map(({ id, title }: RadioButtonsProps, index) => (\n <RadioCardBox\n key={index}\n active={id === radioValue}\n onPointerDown={() => onPointerDown(id)}\n >\n {title}\n </RadioCardBox>\n ))}\n </>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { ReactNode } from \"react\";\n\ninterface headerProp {\n headerLabel?: string;\n child?: ReactNode;\n}\n\nconst TopHeader = styled.div`\n display: flex;\n align-items: var(--ddk-component-schedule-table-div-center-text-align);\n justify-content: space-between;\n padding: var(--ddk-semantic-control-container-padding);\n background-color: var(--ddk-generic-color-grey-5);\n`;\nconst HeaderTitle = styled.div`\n font-size: var(--ddk-generic-font-size-small);\n font-weight: var(--ddk-generic-font-weight-medium);\n line-height: var(--ddk-component-schedule-table-header-line-height);\n color: var(--ddk-component-schedule-table-header-color);\n`;\n\nexport const ScheduleTableHeader = ({ headerLabel, child }: headerProp) => (\n <TopHeader>\n <HeaderTitle>{headerLabel}</HeaderTitle>\n {child}\n </TopHeader>\n);\n","import styled from \"@emotion/styled\";\nimport { useEffect, useState } from \"react\";\n\nexport interface ToggleProps {\n active?: boolean;\n disabled?: boolean;\n onChange?: (value: boolean) => void;\n shadow?: boolean;\n checked?: boolean;\n label?: string;\n}\n\nconst ToggleContainer = styled.div`\n align-items: center;\n cursor: pointer;\n display: flex;\n justify-content: var(--ddk-component-toggle-container-justify-content);\n gap: var(--ddk-component-toggle-container-gap);\n`;\n\nexport const ToggleTrack = styled.div<ToggleProps>`\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-toggle-track-background-color-disabled)\"\n : props.checked\n ? \"var(--ddk-component-toggle-track-background-color-on)\"\n : \"var(--ddk-component-toggle-track-background-color-off)\"};\n\n border-radius: var(--ddk-component-toggle-thumb-size);\n box-sizing: border-box;\n height: calc(\n var(--ddk-component-toggle-thumb-size) +\n var(--ddk-component-toggle-track-padding) * 2\n );\n padding: var(--ddk-component-toggle-track-padding);\n transition-duration: var(--ddk-component-toggle-track-transition-duration);\n transition-property: var(--ddk-component-toggle-track-transition-property);\n display: flex;\n align-items: center;\n transition-timing-function: var(\n --ddk-component-toggle-track-transition-timing-function\n );\n width: var(--ddk-component-toggle-track-width);\n`;\n\nexport const ToggleThumb = styled.div<ToggleProps>`\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-toggle-thumb-background-color-disabled)\"\n : \"var(--ddk-component-toggle-thumb-background-color-default)\"};\n border-radius: var(--ddk-component-toggle-thumb-size);\n box-shadow: var(--ddk-component-toggle-thumb-box-shadow);\n height: var(--ddk-component-toggle-thumb-size);\n width: var(--ddk-component-toggle-thumb-size);\n\n transform: ${(props) =>\n props.checked\n ? \"translate(calc(var(--ddk-component-toggle-track-width) - var(--ddk-component-toggle-thumb-size) - var(--ddk-component-toggle-track-padding) * 2), 0px)\"\n : \"translate(0px, 0px)\"};\n\n transition-duration: var(--ddk-component-toggle-thumb-transition-duration);\n transition-property: var(--ddk-component-toggle-thumb-transition-property);\n transition-timing-function: var(\n --ddk-component-toggle-thumb-transition-timing-function\n );\n`;\n\nexport const ToggleLabel = styled.div`\n color: var(--ddk-component-toggle-label-color);\n font-family: var(--ddk-component-toggle-label-font-family);\n font-size: var(--ddk-component-toggle-label-font-size);\n font-weight: var(--ddk-component-toggle-label-font-weight);\n letter-spacing: var(--ddk-component-toggle-label-letter-spacing);\n`;\n\nexport const Toggle = ({\n checked,\n disabled,\n label,\n onChange,\n ...props\n}: ToggleProps) => {\n const [checkedValue, setCheckedValue] = useState<boolean>(checked ?? false);\n\n useEffect(() => {\n setCheckedValue(checked ?? false);\n }, [checked]);\n\n const onPointerDown = () => {\n if (disabled) return;\n\n setCheckedValue(!checkedValue);\n onChange?.(!checkedValue);\n };\n\n return (\n <ToggleContainer>\n {label && <ToggleLabel>{label}</ToggleLabel>}\n <ToggleTrack\n checked={checkedValue}\n disabled={disabled}\n {...props}\n onPointerDown={onPointerDown}\n >\n <ToggleThumb checked={checkedValue} disabled={disabled} {...props} />\n </ToggleTrack>\n </ToggleContainer>\n );\n};\n","import { css } from \"@emotion/react\";\ninterface SubHeadingProp {\n headings: string[];\n}\n\nconst tableHeadings = css`\n padding: var(--ddk-component-schedule-table-sub-heading-padding);\n padding-bottom: 0;\n font-size: var(--ddk-generic-font-size-x-small);\n font-weight: var(--ddk-generic-font-weight-medium);\n line-height: var(--ddk-component-schedule-table-div-line-height);\n color: var(--ddk-generic-color-grey-60);\n`;\nexport const ScheduleTableRow = ({ headings }: SubHeadingProp) => (\n <>\n {headings?.map((data, i) => (\n <th key={i} css={tableHeadings}>\n {data}\n </th>\n ))}\n </>\n);\n","import { css } from \"@emotion/react\";\nimport { ScheduleTableHeader } from \"./schedule-table-header\";\nimport styled from \"@emotion/styled\";\nimport { Toggle } from \"../toggle\";\nimport { ReactNode } from \"react\";\nimport { ScheduleTableRow } from \"./schedule-table-row\";\nimport { ActionItem } from \"../../styles\";\n\ninterface IProp {\n tableMainHeading: string;\n headingRightChild: ReactNode;\n tableSubHeadings: string[];\n weekSchedule: {\n day: string;\n isTrue: boolean;\n openTime: string;\n closeTime: string;\n }[];\n}\n\nexport const ScheduleTableDiv = styled.div`\n width: 100%;\n border: 1px solid var(--ddk-generic-color-grey-30);\n border-radius: 8px;\n`;\n\nconst tableDesign = css`\n width: 100%;\n text-align: center;\n border-collapse: collapse;\n`;\n\nconst tableRows = css`\n border-bottom: 1px solid var(--ddk-generic-color-grey-30);\n`;\nconst tableDiv = css`\n padding: var(--ddk-component-schedule-table-div-padding);\n font-size: var(--ddk-generic-font-size-x-small);\n font-weight: var(--ddk-generic-font-weight-medium);\n line-height: var(--ddk-component-schedule-table-div-line-height);\n color: var(--ddk-generic-color-grey-100);\n`;\nconst tableLeftNode = css`\n text-align: var(--ddk-component-schedule-table-div-left-text-align);\n`;\nconst tableCenterNode = css`\n text-align: var(--ddk-component-schedule-table-div-center-text-align);\n`;\n\nconst centerContent = css`\n justify-content: center;\n`;\n\nexport const ScheduleTable = ({\n tableMainHeading,\n headingRightChild,\n weekSchedule,\n tableSubHeadings,\n}: IProp) => (\n <ScheduleTableDiv>\n <table css={tableDesign}>\n <thead>\n <tr css={tableRows}>\n <th colSpan={4}>\n <ScheduleTableHeader\n headerLabel={tableMainHeading}\n child={headingRightChild}\n />\n </th>\n </tr>\n <tr>\n <ScheduleTableRow headings={tableSubHeadings} />\n </tr>\n </thead>\n <tbody>\n {weekSchedule?.map((data, i) => (\n <tr css={tableRows} key={i}>\n <td css={[tableDiv, tableLeftNode]}>{data?.day}</td>\n <td css={[tableDiv, tableCenterNode]}>\n <Toggle checked={data?.isTrue} />\n </td>\n <td css={tableDiv}>\n <ActionItem css={centerContent} children={data?.openTime} />\n </td>\n <td css={tableDiv}>\n <ActionItem css={centerContent} children={data?.closeTime} />\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n </ScheduleTableDiv>\n);\n","import { CloseSidebarIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport {\n ActionItemButtonProps,\n IconButton,\n IconButtonSize,\n} from \"../../styles\";\n\ninterface ExtendedActionItemButtonProps extends ActionItemButtonProps {\n label?: string;\n size?: IconButtonSize;\n}\n\nexport const SidebarCloseButton = ({\n children,\n label,\n size = \"medium\",\n ...props\n}: ExtendedActionItemButtonProps) => (\n <IconButton icon={CloseSidebarIcon} size={size} {...props}>\n {label}\n </IconButton>\n);\n","import { PropsWithChildren } from \"react\";\nimport { Portal } from \"../portal\";\nimport {\n SidebarContent,\n SidebarHeader,\n SidebarNav,\n} from \"../../styles/sidebar\";\n\nimport { SidebarCloseButton } from \"../sidebar-close-button\";\nimport { animated, useSpring } from \"@react-spring/web\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport styled from \"@emotion/styled\";\n\nconst AnimatedSidebarNav = animated(SidebarNav);\n\nexport interface SidebarProps {\n enableAnimation?: boolean;\n show: boolean;\n title: string;\n onClose: () => void;\n}\n\nconst Shade = styled.div`\n background: transparent;\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n`;\nexport const Sidebar: React.FunctionComponent<\n PropsWithChildren<SidebarProps>\n> = ({ children, enableAnimation, show, onClose, title }) => {\n const componentConfigurationContext = useComponentConfigurationContext();\n\n const enableAnimationValue =\n enableAnimation !== undefined\n ? enableAnimation\n : componentConfigurationContext.enableSidebarAnimation;\n\n const props = useSpring({\n left: show ? \"0px\" : \"-515px\",\n immediate: !enableAnimationValue,\n });\n\n return (\n <Portal>\n {show && <Shade onPointerDown={onClose} />}\n <AnimatedSidebarNav style={props}>\n <SidebarHeader>\n <SidebarCloseButton onPointerDown={onClose} /> {title}\n </SidebarHeader>\n <SidebarContent>{children}</SidebarContent>\n </AnimatedSidebarNav>\n </Portal>\n );\n};\n","import { css } from \"@emotion/react\";\nimport { ActionItemButton, Card } from \"../../styles\";\n\nexport interface StaticInputCardProps {\n label: string;\n value?: string;\n}\n\nconst inputCardStyles = css`\n font-family: var(--ddk-component-input-action-item-font-family);\n`;\n\nexport const StaticInputCard = ({ label, value }: StaticInputCardProps) => (\n <Card>\n {label}\n <ActionItemButton css={inputCardStyles}>{value}</ActionItemButton>\n </Card>\n);\n","import styled from \"@emotion/styled\";\nimport { Card } from \"../../styles\";\n\nexport interface StatusCardProps {\n failureMessage?: string;\n lastSuccess?: Date;\n leftLabel: string;\n message?: React.ReactNode;\n rightLabel: string;\n type: \"Default\" | \"Success\" | \"Fail\" | \"InProgress\";\n lastSuccessful: string;\n}\n\ninterface StatusCardHeaderProps {\n type: string;\n}\n\nconst CardStatus = styled.div`\n display: flex;\n flex-direction: column;\n gap: 8px;\n width: 100%;\n max-width: 100%;\n\n p {\n color: var(--ddk-component-status-card-message-color);\n font-size: var(--ddk-component-status-card-message-font-size);\n margin: 0px;\n }\n`;\n\nconst StatusCardHeader = styled.div<StatusCardHeaderProps>`\n display: flex;\n justify-content: space-between;\n width: 100%;\n\n h4 {\n align-items: center;\n display: flex;\n font-size: var(--ddk-component-status-card-title-font-size);\n font-weight: var(--ddk-component-status-card-title-font-weight);\n gap: 8px;\n margin: 0px;\n }\n\n label {\n color: ${({ type }) =>\n type === \"Fail\"\n ? \"var(--ddk-component-status-card-color-secondary)\"\n : type === \"InProgress\" || type === \"Default\"\n ? \"var(--ddk-component-status-card-color-inprogress)\"\n : \"var( --ddk-component-status-card-color-primary)\"};\n\n font-size: var(--ddk-component-status-card-message-font-size);\n }\n`;\n\nconst StatusCardFooter = styled.div`\n display: flex;\n justify-content: space-between;\n width: 100%;\n\n label {\n color: var(--ddk-component-status-card-color-secondary);\n font-size: var(--ddk-component-status-card-message-font-size);\n font-weight: var(--ddk-component-status-card-last-successful-font-weight);\n }\n`;\n\nexport const StatusDots = styled.span`\n background-color: ${({ type }: { type: string }) =>\n type === \"Fail\"\n ? \"var(--ddk-component-status-card-icon-color-fail)\"\n : type === \"InProgress\"\n ? \"var(--ddk-component-status-card-icon-color-inprogress)\"\n : \"var(--ddk-component-status-card-icon-color-success)\"};\n\n border-radius: var(--ddk-component-status-card-dot-border-radius);\n display: inline-block;\n height: 8px;\n width: 8px;\n`;\n\nexport const StatusCard = ({\n failureMessage,\n lastSuccess,\n leftLabel,\n message,\n rightLabel,\n type,\n lastSuccessful,\n}: StatusCardProps) => (\n <Card>\n <CardStatus>\n <StatusCardHeader type={type}>\n <h4>\n {type !== \"Default\" && <StatusDots type={type}></StatusDots>}\n {leftLabel}\n </h4>\n <label>{rightLabel}</label>\n </StatusCardHeader>\n {message && <div>{message}</div>}\n {type === \"Fail\" && (\n <StatusCardFooter>\n <p>{failureMessage}</p>\n <label>\n {lastSuccessful}: {lastSuccess?.toLocaleString()}\n </label>\n </StatusCardFooter>\n )}\n </CardStatus>\n </Card>\n);\n","import { StepStatus } from \"@kosdev-code/kos-ddk-styles\";\n\ntype Size = \"large\" | \"small\";\ntype Status = \"active\" | \"completed\" | \"incomplete\" | \"pending\" | \"error\";\n\nexport const getFill = (status: Status) => {\n switch (status) {\n case \"active\":\n return \"var(--ddk-component-status-indicator-fill-active)\";\n case \"completed\":\n return \"var(--ddk-component-status-indicator-fill-completed)\";\n case \"incomplete\":\n return \"var(--ddk-component-status-indicator-fill-incomplete)\";\n case \"pending\":\n return \"var(--ddk-component-status-indicator-fill-pending)\";\n case \"error\":\n return \"var(--ddk-component-status-indicator-fill-error)\";\n default:\n return undefined;\n }\n};\n\nexport const getSize = (size: Size) => {\n switch (size) {\n case \"large\":\n return \"var(--ddk-component-status-indicator-large)\";\n case \"small\":\n return \"var(--ddk-component-status-indicator-small)\";\n default:\n return undefined;\n }\n};\n\ninterface StatusIndicatorProps {\n size?: \"large\" | \"small\";\n status?: Status;\n}\n\nexport const StatusIndicator = ({\n size = \"large\",\n status = \"pending\",\n}: StatusIndicatorProps) => {\n const fill = getFill(status);\n const sizeValue = getSize(size);\n\n return (\n <StepStatus\n fill={fill}\n style={{ height: sizeValue, width: sizeValue }}\n ></StepStatus>\n );\n};\n","/** @jsxImportSource @emotion/react */\nimport styled from \"@emotion/styled\";\n\nexport interface StepsIndicatorLabelProps {\n leftLabel: string;\n type: boolean;\n}\n\ninterface StatusCardHeaderProps {\n isFail: boolean;\n}\n\nconst LabelStatus = styled.div`\n display: flex;\n flex-direction: column;\n gap: 8px;\n width: 100%;\n\n p {\n color: var(--ddk-component-status-card-message-color);\n font-size: var(--ddk-component-status-card-message-font-size);\n margin: 0px;\n }\n`;\n\nconst StatusCardHeader = styled.div<StatusCardHeaderProps>`\n display: flex;\n justify-content: space-between;\n width: 100%;\n\n h4 {\n align-items: center;\n display: flex;\n gap: 8px;\n margin: 0px;\n color: var(--ddk-generic-color-grey-100, #171717);\n font-size: 22px;\n font-style: normal;\n font-weight: 600;\n line-height: 120%; /* 33.6px */\n letter-spacing: 0.42px;\n }\n\n label {\n color: ${(props) =>\n props.isFail\n ? \"var(--ddk-component-status-card-color-secondary)\"\n : \"var( --ddk-component-status-card-color-primary)\"};\n\n font-size: var(--ddk-component-status-card-title-font-size);\n }\n`;\n\nconst StatusDots = styled.span`\n background-color: ${({ isFail }: { isFail: boolean }) =>\n isFail\n ? \"var(--ddk-component-step-indicator-label-color-fail)\" // Change the color for isFail\n : \"var(--ddk-component-status-card-icon-color-success)\"};\n border-radius: var(--ddk-component-status-card-dot-border-radius);\n display: inline-block;\n height: 16px;\n width: 16px;\n`;\n\nexport const StepsIndicatorLabel = ({\n leftLabel,\n type,\n}: StepsIndicatorLabelProps) => (\n <LabelStatus>\n <StatusCardHeader isFail={type}>\n <h4>\n {type && <StatusDots isFail={type}></StatusDots>}\n {!type && <StatusDots isFail={type}></StatusDots>}\n {leftLabel}\n </h4>\n </StatusCardHeader>\n </LabelStatus>\n);\n","import styled from \"@emotion/styled\";\nimport { CloseSidebarIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport { StepsIndicatorLabel } from \"../steps-indicator-label\";\n\nconst SidebarSubContainer = styled.div`\n width: 300px;\n background: var(--ddk-generic-color-grey-5, #f9f9f9);\n box-shadow: 8px 0px 16px 0px rgba(0, 0, 0, 0.08),\n 0px 0px 4px 0px rgba(0, 0, 0, 0.04);\n padding: 32px 96px 32px 40px;\n display: flex;\n flex-direction: column;\n gap: 64px;\n`;\n\nconst SidebarList = styled.ul`\n list-style-type: none;\n padding: 0;\n`;\n\nconst SidebarItem = styled.li`\n margin-bottom: 40px;\n`;\n\nconst LogoContainer = styled.div`\n padding-top: 32px;\n display: flex;\n flex-direction: row;\n gap: 16px;\n`;\n\nconst StepsLabel = styled.div`\n color: var(--ddk-generic-color-grey-100, #171717);\n font-size: 28px;\n font-style: normal;\n font-weight: 600;\n line-height: 120%; /* 33.6px */\n letter-spacing: 0.42px;\n`;\n\ntype MenuItem = {\n name: string;\n type: boolean;\n};\n\ninterface StepsSideNavProps {\n onClose: () => void;\n menuData: MenuItem[];\n}\n\nexport const StepsSideNav = ({ onClose, menuData }: StepsSideNavProps) => (\n <SidebarSubContainer>\n <LogoContainer>\n <CloseSidebarIcon onPointerDown={onClose} />\n <StepsLabel>Setup</StepsLabel>\n </LogoContainer>\n <SidebarList>\n {menuData.map((item, index) => (\n <SidebarItem key={index}>\n <StepsIndicatorLabel leftLabel={item.name} type={item.type} />\n </SidebarItem>\n ))}\n </SidebarList>\n </SidebarSubContainer>\n);\n","import { css } from \"@emotion/react\";\nimport { SubNavButton } from \"../../styles\";\n\nexport interface SubNavProps {\n buttons: {\n label: string;\n id: number;\n }[];\n activeButtonId: number;\n onPointerDown: (id: number) => void;\n}\nconst sideBar = css`\n border-right: 1px solid var(--ddk-component-sub-nav-border-color);\n width: 200px;\n`;\n\nconst sideBarBody = css`\n padding-top: var(--ddk-component-sub-nav-padding-medium);\n padding: var(--ddk-component-top-navigation-padding);\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-sub-nav-gap);\n`;\n\nexport const SubNav = ({\n buttons,\n activeButtonId,\n onPointerDown,\n}: SubNavProps) => (\n <div css={sideBar}>\n <div css={sideBarBody}>\n {buttons.map((item) => (\n <SubNavButton\n key={item.id}\n active={activeButtonId === item.id}\n onPointerDown={() => onPointerDown(item.id)}\n >\n {item.label}\n </SubNavButton>\n ))}\n </div>\n </div>\n);\n","import { css } from \"@emotion/react\";\nimport { SubNav } from \"../sub-nav/sub-nav\";\nimport { ReactNode } from \"react\";\n\ninterface SubNavContainerProps {\n children: ReactNode;\n onPointerDown: (val: number) => void;\n buttons: {\n label: string;\n id: number;\n }[];\n activeButtonId: number;\n}\n\nconst mainWrapper = css`\n display: flex;\n height: 100%;\n max-height: 100%;\n`;\n\nconst rightWrapper = css`\n flex-grow: 1;\n overflow: hidden;\n overflow-y: scroll;\n`;\n\nconst rightWrapperBody = css`\n padding: var(--ddk-component-sub-nav-container-padding-medium);\n`;\n\nexport const SubNavContainer = ({\n children,\n onPointerDown,\n buttons,\n activeButtonId,\n}: SubNavContainerProps) => (\n <div css={mainWrapper}>\n <SubNav\n onPointerDown={onPointerDown}\n activeButtonId={activeButtonId}\n buttons={buttons}\n />\n <div css={rightWrapper}>\n <div css={rightWrapperBody}>{children}</div>\n </div>\n </div>\n);\n","import styled from \"@emotion/styled\";\nimport { useEffect, useState } from \"react\";\n\nexport interface SwitchButtonProps {\n active?: boolean;\n disabled?: boolean;\n}\n\nconst SwitchButton = styled.div<SwitchButtonProps>`\n align-items: center;\n\n background-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-switch-background-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-switch-background-color-active)\"\n : \"var(--ddk-component-switch-background-color-default)\"};\n\n border-color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-switch-border-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-switch-border-color-active)\"\n : \"var(--ddk-component-switch-border-color-default)\"};\n\n border-radius: var(--ddk-component-switch-border-radius);\n border-style: var(--ddk-generic-solid-border-style);\n border-width: var(--ddk-component-switch-border-width);\n\n border-top-width: ${(props) =>\n props.active && \"var(--ddk-component-switch-border-top-width-active)\"};\n border-bottom-width: ${(props) =>\n props.active && \"var(--ddk-component-switch-border-bottom-width-active)\"};\n\n box-sizing: border-box;\n\n color: ${(props) =>\n props.disabled\n ? \"var(--ddk-component-switch-color-disabled)\"\n : props.active\n ? \"var(--ddk-component-switch-color-active)\"\n : \"var(--ddk-component-switch-color-default)\"};\n\n cursor: ${(props) =>\n props.disabled || props.active ? \"default\" : \"pointer\"};\n\n display: inline-flex;\n flex: 1;\n font-family: var(--ddk-component-switch-font-family);\n font-size: var(--ddk-component-switch-font-size);\n\n font-weight: ${(props) =>\n props.active\n ? \"var(--ddk-component-switch-font-weight-active)\"\n : \"var(--ddk-component-switch-font-weight-default)\"};\n\n gap: var(--ddk-component-switch-gap);\n height: var(--ddk-component-switch-height);\n justify-content: center;\n max-width: var(--ddk-component-switch-max-width);\n min-width: var(--ddk-component-switch-min-width);\n padding: var(--ddk-component-switch-padding-vertical)\n var(--ddk-component-switch-padding);\n padding-bottom: ${(props) =>\n props.active &&\n \"calc(var(--ddk-component-switch-padding-vertical) - var(--ddk-component-switch-padding-offset) * 2)\"};\n\n transition-duration: var(--ddk-component-switch-transition-duration);\n transition-property: var(--ddk-component-switch-transition-property);\n transition-timing-function: var(\n --ddk-component-switch-transition-timing-function\n );\n\n user-select: none;\n white-space: nowrap;\n\n &:hover {\n background-color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-switch-background-color-hover)\"};\n\n border-color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-switch-border-color-hover)\"};\n\n color: ${(props) =>\n !(props.active || props.disabled) &&\n \"var(--ddk-component-switch-color-hover)\"};\n }\n\n &:active {\n background-color: ${(props) =>\n !props.disabled && \"var(--ddk-component-switch-background-color-active)\"};\n\n border-color: ${(props) =>\n !props.disabled && \"var(--ddk-component-switch-border-color-active)\"};\n\n color: ${(props) =>\n !props.disabled && \"var(--ddk-component-switch-color-active)\"};\n }\n`;\n\nconst SwitchLeftButton = styled(SwitchButton)<SwitchButtonProps>`\n border-radius: var(--ddk-component-switch-border-radius) 0px 0px\n var(--ddk-component-switch-border-radius);\n\n border-right-width: ${(props) =>\n props.active && \"calc(var(--ddk-component-switch-padding-offset) * 2)\"};\n\n padding-right: ${(props) =>\n props.active &&\n \"calc(var(--ddk-component-switch-padding) - var(--ddk-component-switch-padding-offset))\"};\n`;\n\nconst SwitchMiddleButton = styled(SwitchButton)<SwitchButtonProps>`\n border-radius: 0px;\n\n border-left-width: ${(props) =>\n props.active && \"calc(var(--ddk-component-switch-padding-offset) * 2)\"};\n border-right-width: ${(props) =>\n props.active && \"calc(var(--ddk-component-switch-padding-offset) * 2)\"};\n\n padding-left: ${(props) =>\n props.active &&\n \"calc(var(--ddk-component-switch-padding) - var(--ddk-component-switch-padding-offset))\"};\n\n padding-right: ${(props) =>\n props.active &&\n \"calc(var(--ddk-component-switch-padding) - var(--ddk-component-switch-padding-offset))\"};\n`;\n\nconst SwitchRightButton = styled(SwitchButton)<SwitchButtonProps>`\n border-radius: 0px var(--ddk-component-switch-border-radius)\n var(--ddk-component-switch-border-radius) 0px;\n\n border-left-width: ${(props) =>\n props.active && \"calc(var(--ddk-component-switch-padding-offset) * 2)\"};\n\n padding-left: ${(props) =>\n props.active &&\n \"calc(var(--ddk-component-switch-padding) - var(--ddk-component-switch-padding-offset))\"};\n`;\n\nexport type SwitchValue = string;\n\nexport interface SwitchOption {\n id: SwitchValue;\n label: string;\n}\n\nexport type SwitchOptions = Array<SwitchOption>;\n\nexport interface SwitchProps {\n disabled?: boolean;\n onChange?: (value: SwitchValue) => void;\n options: SwitchOptions;\n value?: SwitchValue;\n}\n\nconst SwitchContainer = styled.div`\n display: flex;\n justify-content: center;\n`;\n\nexport const Switch = ({ disabled, onChange, options, value }: SwitchProps) => {\n const [switchValue, setSwitchValue] = useState(value);\n\n useEffect(() => {\n setSwitchValue(value);\n }, [value]);\n\n const onPointerDown = (id: SwitchValue) => {\n if (disabled || id === switchValue) return;\n\n setSwitchValue(id);\n onChange?.(id);\n };\n\n return (\n <SwitchContainer>\n {options.map(({ id, label }, index) => {\n const SwitchButton =\n index === 0\n ? SwitchLeftButton\n : index === options.length - 1\n ? SwitchRightButton\n : SwitchMiddleButton;\n\n return (\n <SwitchButton\n key={id}\n active={id === switchValue}\n disabled={disabled}\n onPointerDown={() => onPointerDown(id)}\n >\n {label}\n </SwitchButton>\n );\n })}\n </SwitchContainer>\n );\n};\n","import { useComponentConfigurationContext } from \"../../core\";\nimport { Card } from \"../../styles\";\nimport { Switch, SwitchProps } from \"../switch\";\n\nexport interface SwitchCardProps extends SwitchProps {\n label: string;\n}\n\nexport const SwitchCard = ({ label, ...props }: SwitchCardProps) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <Card collapse={componentModeOverride === \"compact\"}>\n {label}\n <Switch {...props} />\n </Card>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { useEffect, useMemo, useState } from \"react\";\nimport { Card } from \"../../styles\";\nimport { Dropdown } from \"../dropdown\";\nimport { CancelProceedFooter, Content, Header, Modal } from \"../modal\";\nimport { Picker, PickerItem } from \"../picker\";\nimport { DialItem } from \"../dial\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { CompactCloseButton } from \"../compact-close-button\";\nimport { Switch } from \"../switch\";\n\nconst Container = styled.div`\n display: flex;\n flex-direction: column;\n padding: var(--ddk-component-picker-padding);\n gap: var(--ddk-component-picker-gap);\n height: 100%;\n`;\n\nexport interface SwitchPickerCardItem<T> {\n id: string;\n label: string;\n items: PickerItem<T>[];\n}\n\nconst findSelectedSwitch = <T,>(\n data: SwitchPickerCardItem<T>[],\n selectedItemID: T\n) =>\n data.find((value) =>\n value.items.find((value) => value.id === selectedItemID)\n );\n\nexport interface SwitchPickerCardProps<T> {\n cancelButtonLabel?: string;\n closeButtonLabel?: string;\n collapse?: boolean;\n data: SwitchPickerCardItem<T>[];\n disabled?: boolean;\n displayValue?: string;\n enableAnimation?: boolean;\n float?: boolean;\n label: string;\n loop?: boolean;\n numberOfVisibleItems?: number;\n onSave?: (id: T) => void;\n proceedButtonLabel?: string;\n selectedItemId?: T;\n selectedItemOffset?: number;\n unitValue?: string;\n}\n\nexport const SwitchPickerCard = <T,>({\n cancelButtonLabel,\n closeButtonLabel,\n collapse,\n disabled,\n displayValue,\n enableAnimation,\n data,\n label,\n loop,\n numberOfVisibleItems,\n onSave,\n proceedButtonLabel,\n selectedItemId,\n selectedItemOffset,\n unitValue,\n ...props\n}: SwitchPickerCardProps<T>) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n const [open, setOpen] = useState(false);\n const [saveSelectedIdValue, setSaveSelectedIdValue] = useState<T>();\n const [selectedSwitch, setSelectedSwitch] = useState<string>(\n findSelectedSwitch(data, selectedItemId)?.id ?? data[0].id\n );\n\n useEffect(() => {\n // If the switch picker card modal is opened, let's reset which switch is\n // active so the user can see the actively selected item...\n if (open)\n setSelectedSwitch(\n findSelectedSwitch(data, selectedItemId)?.id ?? data[0].id\n );\n }, [data, open, selectedItemId]);\n\n const items = useMemo(\n () => data.find((value) => value.id === selectedSwitch)?.items,\n [data, selectedSwitch]\n );\n\n useEffect(() => {\n const hasItem = items?.find((item) => item.id === saveSelectedIdValue);\n\n if (hasItem) {\n setSaveSelectedIdValue(saveSelectedIdValue);\n } else {\n if (items && items.length > 0) setSaveSelectedIdValue(items?.[0].id);\n }\n }, [data, items, saveSelectedIdValue, selectedItemId, selectedSwitch]);\n\n const pickerOnChange = ({ id }: DialItem<T>) => {\n setSaveSelectedIdValue(id);\n };\n\n const cancelProceedFooterOnSave = () => {\n if (saveSelectedIdValue !== undefined) onSave?.(saveSelectedIdValue);\n\n setOpen(false);\n };\n\n return (\n <Card collapse={collapse ?? componentModeOverride === \"compact\"} {...props}>\n {label}\n\n <Dropdown\n disabled={disabled}\n onPointerDown={() => !disabled && setOpen(true)}\n unitValue={unitValue}\n >\n {displayValue}\n </Dropdown>\n\n <Modal\n show={open}\n onClose={() => setOpen(false)}\n contain={componentModeOverride !== \"compact\"}\n >\n <Header\n title={label}\n showCloseButton\n onClose={() => setOpen(false)}\n closeButtonLabel={closeButtonLabel}\n CloseButton={\n componentModeOverride === \"compact\" ? CompactCloseButton : undefined\n }\n />\n <Container>\n <Content>\n <Switch\n options={data}\n value={selectedSwitch}\n onChange={setSelectedSwitch}\n />\n <Picker<T>\n key={(open && selectedSwitch) || \"\"}\n enableAnimation={enableAnimation}\n items={items}\n loop={loop}\n numberOfVisibleItems={numberOfVisibleItems}\n onChange={pickerOnChange}\n selectedItemId={selectedItemId}\n selectedItemOffset={selectedItemOffset}\n />\n </Content>\n <CancelProceedFooter\n cancelLabel={cancelButtonLabel}\n proceedLabel={proceedButtonLabel}\n onProceed={cancelProceedFooterOnSave}\n onCancel={() => setOpen(false)}\n />\n </Container>\n </Modal>\n </Card>\n );\n};\n","import { useState, ReactNode, useEffect, useMemo } from \"react\";\nimport { Container } from \"../../styles\";\nimport styled from \"@emotion/styled\";\n\nconst TabContainer = styled.div`\n border-bottom: var(--ddk-component-tab-list-border-bottom);\n`;\n\nconst TabContainerWithBackground = styled(TabContainer)`\n background: var(--ddk-component-tab-list-background-color);\n`;\n\nconst TabList = styled.div`\n display: flex;\n gap: var(--ddk-component-tab-list-gap);\n`;\n\nconst TabListWithPadding = styled(TabList)`\n padding: var(--ddk-component-tab-list-padding);\n`;\n\nconst TabContent = styled.div`\n overflow-y: auto;\n`;\n\nconst Tab = styled.div`\n cursor: pointer;\n font-size: var(--ddk-component-tab-font-size);\n font-weight: var(--ddk-component-tab-font-weight-default);\n letter-spacing: var(--ddk-component-tab-letter-spacing);\n line-height: var(--ddk-component-tab-line-height);\n min-width: var(--ddk-component-tab-min-width);\n overflow: hidden;\n padding: var(--ddk-component-tab-padding);\n text-align: center;\n text-overflow: ellipsis;\n white-space: nowrap;\n`;\n\nconst ActiveTab = styled(Tab)`\n color: var(--ddk-component-tab-color);\n border-bottom: var(--ddk-component-tab-border-bottom-active);\n font-weight: var(--ddk-component-tab-font-weight-active);\n`;\n\nexport interface Tab {\n id: string;\n label: string;\n content: ReactNode;\n}\n\nexport interface TabsProps {\n activeTab?: string;\n contain?: boolean;\n tabs: Tab[];\n onChange?: (tab: Tab) => void;\n showBackground?: boolean;\n}\n\nexport const Tabs = ({\n activeTab,\n contain = true,\n tabs,\n onChange,\n showBackground = true,\n}: TabsProps) => {\n const [activeTabValue, setActiveTabValue] = useState<string | undefined>(\n activeTab\n );\n\n const handleTabClick = (tab: Tab) => {\n if (activeTab === undefined) setActiveTabValue(tab.id);\n\n onChange?.(tab);\n };\n\n useEffect(() => {\n setActiveTabValue(activeTab);\n }, [activeTab]);\n\n const tabMap = useMemo(\n () =>\n tabs.reduce((previousValue: Record<string, Tab>, currentValue: Tab) => {\n return {\n ...previousValue,\n [currentValue.id]: currentValue,\n };\n }, {}),\n [tabs]\n );\n\n const TabContainerComponent = showBackground\n ? TabContainerWithBackground\n : TabContainer;\n\n const TabListComponent = contain ? TabListWithPadding : TabList;\n\n return (\n <>\n <TabContainerComponent>\n <Container>\n <TabListComponent>\n {tabs.map((tab) => {\n const TabComponent = activeTabValue === tab.id ? ActiveTab : Tab;\n\n return (\n <TabComponent\n key={tab.id}\n onPointerDown={() => handleTabClick(tab)}\n >\n {tab.label}\n </TabComponent>\n );\n })}\n </TabListComponent>\n </Container>\n </TabContainerComponent>\n <TabContent>\n <Container>\n {activeTabValue && tabMap[activeTabValue] && (\n <section>{tabMap[activeTabValue].content}</section>\n )}\n </Container>\n </TabContent>\n </>\n );\n};\n","import { useCallback } from \"react\";\nimport {\n useNavigate as useReactRouterNavigate,\n useSearchParams,\n type NavigateFunction,\n type NavigateOptions,\n type To,\n} from \"react-router-dom\";\n\nexport const useNavigate = () => {\n const reactRouterNavigate = useReactRouterNavigate();\n const [searchParams] = useSearchParams();\n\n const navigate: NavigateFunction = useCallback<NavigateFunction>(\n (a: To | number, b?: NavigateOptions) => {\n if (typeof a === \"number\") {\n reactRouterNavigate(a);\n } else {\n if (typeof a === \"string\") {\n reactRouterNavigate(\n { pathname: a, search: searchParams.toString() },\n b\n );\n } else {\n reactRouterNavigate(\n {\n pathname: a.pathname,\n search: a.search || searchParams.toString(),\n hash: a.hash,\n },\n b\n );\n }\n }\n },\n [reactRouterNavigate, searchParams]\n );\n\n return navigate;\n};\n","import { useMemo } from \"react\";\n\nexport const abbreviate = (str: string) => {\n // Initialize the result with the uppercase first letter of the input string\n let result = str[0].toUpperCase();\n\n // Iterate through the string starting from the second character\n for (let i = 1; i < str.length; i++) {\n // Check if the current character is in upper case or a number\n if (str[i] === str[i].toUpperCase() && isNaN(parseInt(str[i]))) {\n // Add the current uppercase letter to the result\n result += str[i];\n } else if (!isNaN(parseInt(str[i]))) {\n // Add numbers directly to the result\n result += str[i];\n }\n }\n\n return result;\n};\n\nexport const useAbbreviation = (str: string, enabled?: boolean) =>\n useMemo(() => {\n if (!enabled) return str;\n\n return abbreviate(str);\n }, [enabled, str]);\n","import { useCallback, useEffect, useState } from \"react\";\nimport { useParams } from \"react-router-dom\";\nimport { Tab, Tabs } from \"../tabs\";\nimport { useNavigate } from \"../../hooks\";\n\nexport interface TabRouterProps {\n baseRoute: string;\n tabs: Tab[];\n}\n\nexport const TabRouter = ({ baseRoute, tabs }: TabRouterProps) => {\n const navigate = useNavigate();\n\n const { id: activeTabId } = useParams();\n const [activeTab, setActiveTab] = useState(activeTabId);\n\n useEffect(() => {\n const found = tabs.find((tab) => tab.id === activeTabId);\n if (found) {\n setActiveTab(activeTabId);\n } else {\n navigate(tabs[0].id);\n }\n }, [activeTabId, navigate, tabs]);\n\n const handleTabsChange = useCallback(\n (tab: Tab) => {\n navigate(`${baseRoute}/${tab.id}`);\n setActiveTab(tab.id);\n },\n [baseRoute, navigate]\n );\n\n return <Tabs tabs={tabs} activeTab={activeTab} onChange={handleTabsChange} />;\n};\n","import React, { useEffect, useState } from \"react\";\n\ninterface TapPosition {\n x: number;\n y: number;\n}\n\nexport const TapEventViewer: React.FC = () => {\n const [tap, setTap] = useState<TapPosition | null>(null);\n\n useEffect(() => {\n const handleTap = (event: MouseEvent | TouchEvent) => {\n // Determine the tap position based on the event type\n const x =\n (event as MouseEvent).clientX ||\n (event as TouchEvent).touches[0].clientX;\n const y =\n (event as MouseEvent).clientY ||\n (event as TouchEvent).touches[0].clientY;\n\n // Set the tap position in the state\n setTap({ x, y });\n\n // Remove the tap after one second\n const timeoutId = setTimeout(() => {\n setTap(null);\n }, 1000); // 1 second\n\n // Cleanup timeout on the next tap event\n return () => {\n clearTimeout(timeoutId);\n };\n };\n\n // Add event listeners for both click and touchstart\n document.addEventListener(\"click\", handleTap);\n document.addEventListener(\"touchstart\", handleTap);\n\n // Clean up the event listeners when the component unmounts\n return () => {\n document.removeEventListener(\"click\", handleTap);\n document.removeEventListener(\"touchstart\", handleTap);\n };\n }, []);\n\n return (\n <div>\n {tap && (\n <div\n style={{\n position: \"absolute\",\n top: tap.y,\n left: tap.x,\n backgroundColor: \"rgba(255, 0, 0, 0.5)\",\n borderRadius: \"50%\",\n width: \"40px\",\n height: \"40px\",\n pointerEvents: \"none\",\n transform: \"translate(-50%, -50%)\",\n zIndex: 9999, // Highest z-index\n }}\n />\n )}\n </div>\n );\n};\n","import { useEffect, useState } from \"react\";\nimport { Footer, Header, Modal, type HeaderProps } from \"../modal\";\nimport { Button, Input } from \"../../styles\";\nimport { Keyboard } from \"../keyboard\";\nimport { Switch, SwitchProps } from \"../switch\";\nimport styled from \"@emotion/styled\";\n\ninterface TimeInputModalProps extends SwitchProps, HeaderProps {\n onComplete?: () => void;\n heading: string;\n showSwitch: boolean;\n timeMode?: \"am/pm\" | \"24hour\";\n}\n\nconst LockModalContent = styled.div`\n display: flex;\n flex-direction: column;\n width: 100%;\n align-items: center;\n gap: 24px;\n`;\n\nexport const TimeInputModal = ({\n closeButtonLabel,\n onComplete,\n heading,\n showSwitch,\n timeMode,\n ...props\n}: TimeInputModalProps) => {\n const [inputValue, setInputValue] = useState(\"\");\n const [isError, setIsError] = useState<boolean>(false);\n useEffect(() => {\n processInputAndValidate();\n }, [inputValue]);\n\n const processInputAndValidate = () => {\n if (inputValue.length > 3) {\n const test = inputValue.split(\":\");\n switch (timeMode) {\n case \"am/pm\":\n if (parseInt(test?.[0]) >= 12 || parseInt(test?.[1]) >= 60) {\n setIsError(true);\n }\n break;\n case \"24hour\":\n if (parseInt(test[0]) >= 24 || parseInt(test[1]) >= 60) {\n setIsError(true);\n }\n break;\n }\n }\n };\n\n const input = async (button: string) => {\n switch (button) {\n case \"{bksp}\":\n setInputValue((value) => value?.slice(0, value.length - 1));\n setIsError(false);\n break;\n default:\n if (inputValue.length === 2) {\n if (inputValue.includes(\":\")) {\n setInputValue(inputValue + button);\n } else {\n const newValue =\n inputValue.slice(0, 1) + \":\" + inputValue.slice(1) + button;\n setInputValue(newValue);\n }\n } else if (inputValue.length === 4) {\n const newValue = inputValue.replace(\":\", \"\");\n setInputValue(\n newValue.slice(0, 2) + \":\" + newValue.slice(2) + button\n );\n } else {\n setInputValue(inputValue + button);\n }\n }\n };\n\n const keyReleased = (button: string) => {\n if (\n inputValue &&\n inputValue?.length >= 5 &&\n button !== \"{bksp}\" &&\n button !== \"{enter}\"\n ) {\n return;\n } else {\n input(button);\n }\n };\n\n const [closing, setClosing] = useState(false);\n return (\n <Modal\n show={!closing}\n onClose={() => setClosing(true)}\n onClosed={onComplete}\n >\n <Header\n closeButtonLabel={closeButtonLabel}\n title={<div>{heading}</div>}\n showCloseButton\n onClose={() => setClosing(true)}\n />\n <LockModalContent>\n {showSwitch && <Switch {...props} />}\n <Input value={inputValue} isError={isError} />\n </LockModalContent>\n <Keyboard layout=\"numLogin\" onKeyReleased={keyReleased} />\n <Footer>\n <Button>Discard changes</Button>\n <Button disabled={inputValue.length < 4 || isError}>Save</Button>\n </Footer>\n </Modal>\n );\n};\n","import { css } from \"@emotion/react\";\nimport { useComponentConfigurationContext } from \"../../core\";\nimport { Card } from \"../../styles\";\nimport { Toggle, ToggleProps } from \"../toggle\";\n\nexport interface ToggleCardProps extends ToggleProps {\n alwaysShowLabel?: boolean;\n collapse?: boolean;\n label?: string;\n float?: boolean;\n toggleLabel?: string;\n stretch?: boolean;\n className?: string;\n}\n\nexport const ToggleCard = ({\n alwaysShowLabel = false,\n collapse,\n float,\n label,\n toggleLabel,\n stretch,\n ...props\n}: ToggleCardProps) => {\n const { componentModeOverride } = useComponentConfigurationContext();\n\n return (\n <Card\n collapse={collapse}\n css={css`\n min-height: 0px;\n width: ${stretch && \"100%\"};\n `}\n float={float}\n className={props.className}\n >\n {label}\n <Toggle\n label={\n !alwaysShowLabel && componentModeOverride === \"compact\"\n ? undefined\n : toggleLabel\n }\n {...props}\n />\n </Card>\n );\n};\n","import { NavigationButton, NavigationButtonProps } from \"../../styles\";\nimport { LinkProps, useNavigate } from \"react-router-dom\";\n\ninterface TopNavigationButtonProps extends NavigationButtonProps, LinkProps {}\n\nexport const TopNavigationButton = ({\n children,\n active = false,\n to,\n}: TopNavigationButtonProps) => {\n const navigate = useNavigate();\n\n const handlePointerDown = (event) => {\n event.preventDefault();\n\n navigate(to);\n };\n\n return (\n <NavigationButton active={active} onPointerDown={handlePointerDown}>\n {children}\n </NavigationButton>\n );\n};\n","import { LinkProps, useLocation } from \"react-router-dom\";\nimport { TopNavigationButton } from \"../top-navigation-button\";\nimport styled from \"@emotion/styled\";\n\nconst TopNavigation = styled.div`\n display: flex;\n gap: var(--ddk-component-navigation-button-list-gap);\n`;\n\ninterface TopNavigationButtonListProps {\n items: LinkProps[];\n}\n\nexport const TopNavigationButtonList = ({\n items,\n}: TopNavigationButtonListProps) => {\n const { pathname } = useLocation();\n\n return (\n <TopNavigation>\n {items.map((item, index) => (\n <TopNavigationButton\n key={index}\n active={typeof item.to === \"string\" && pathname.includes(item.to)}\n to={item.to}\n >\n {item.children}\n </TopNavigationButton>\n ))}\n </TopNavigation>\n );\n};\n","import styled from \"@emotion/styled\";\nimport { ElementType } from \"react\";\nimport {\n ActionItemButtonProps,\n IconButton,\n IconButtonSize,\n} from \"../../styles\";\n\nconst IconButtonContainer = styled(IconButton)`\n color: var(--ddk-component-top-navigation-color);\n`;\n\nconst Label = styled.div`\n color: var(--ddk-generic-color-grey-5);\n font-size: var(--ddk-component-navigation-icon-button-font-size);\n`;\n\nexport interface TopNavigationIconButtonProps extends ActionItemButtonProps {\n icon: ElementType;\n label?: string;\n size?: IconButtonSize;\n}\n\nexport const TopNavigationIconButton = ({\n icon: Icon,\n label,\n size,\n ...props\n}: TopNavigationIconButtonProps) => (\n <IconButtonContainer size={size} icon={Icon} {...props}>\n <Label>{label}</Label>\n </IconButtonContainer>\n);\n","import styled from \"@emotion/styled\";\n\nimport {\n TopNavigationIconButton,\n TopNavigationIconButtonProps,\n} from \"../top-navigation-icon-button\";\n\nconst TopNavigation = styled.div`\n display: flex;\n gap: var(--ddk-generic-padding-large);\n`;\n\nexport interface TopNavigationIconButtonListProps {\n items: TopNavigationIconButtonProps[];\n}\n\nexport const TopNavigationIconButtonList = ({\n items,\n}: TopNavigationIconButtonListProps) => (\n <TopNavigation>\n {items.map(({ icon, label }, index) => (\n <TopNavigationIconButton\n key={index}\n icon={icon}\n label={label}\n size=\"small\"\n />\n ))}\n </TopNavigation>\n);\n","import styled from \"@emotion/styled\";\nimport { LinkProps } from \"react-router-dom\";\nimport { Container } from \"../../styles\";\nimport { TopNavigationButtonList } from \"../top-navigation-button-list\";\nimport { TopNavigationIconButtonList } from \"../top-navigation-icon-button-list\";\nimport { TopNavigationIconButtonProps } from \"../top-navigation-icon-button\";\n\nconst TopNavigationStyles = styled.div`\n background-color: var(--ddk-component-top-navigation-background-color);\n color: var(--ddk-component-top-navigation-color);\n`;\n\nconst ContainerStyles = styled.div`\n padding: var(--ddk-component-top-navigation-padding);\n display: flex;\n justify-content: space-between;\n align-items: center;\n`;\n\ninterface TopNavigationProps {\n iconNavigationItems: TopNavigationIconButtonProps[];\n navigationItems: LinkProps[];\n}\n\nexport const TopNavigation = ({\n iconNavigationItems,\n navigationItems,\n}: TopNavigationProps) => (\n <TopNavigationStyles>\n <Container>\n <ContainerStyles>\n <TopNavigationButtonList items={navigationItems} />\n <TopNavigationIconButtonList items={iconNavigationItems} />\n </ContainerStyles>\n </Container>\n </TopNavigationStyles>\n);\n","/** @jsxImportSource @emotion/react */\n\nimport { SerializedStyles, css } from \"@emotion/react\";\nimport { ReactNode } from \"react\";\nimport { Container } from \"../../styles\";\n\nconst viewStyles = css`\n display: flex;\n flex-direction: column;\n gap: var(--ddk-component-view-gap);\n padding: var(--ddk-component-view-padding);\n`;\n\ninterface ViewProps {\n children: ReactNode;\n contain?: boolean;\n style?: SerializedStyles;\n}\n\nexport const View = ({ children, contain = true, style }: ViewProps) =>\n contain ? (\n <Container>\n <div css={[viewStyles, style]}>{children}</div>\n </Container>\n ) : (\n <div css={[viewStyles, style]}>{children}</div>\n );\n","import { ChevronLeftIcon } from \"@kosdev-code/kos-ddk-styles\";\nimport { useKosTranslation } from \"@kosdev-code/kos-ui-sdk\";\nimport {\n ActionItemButtonProps,\n IconButton,\n IconButtonSize,\n} from \"../../styles\";\n\nconst BackText = () => {\n const { t } = useKosTranslation(\"common\");\n\n return t(\"close\");\n};\n\ninterface ExtendedActionItemButtonProps extends ActionItemButtonProps {\n fill?: boolean;\n label?: string | boolean;\n size?: IconButtonSize;\n}\n\nexport const VolumeBackButton = ({\n children,\n fill,\n label,\n size = \"medium\",\n ...props\n}: ExtendedActionItemButtonProps) => (\n <IconButton\n icon={fill ? ChevronLeftIcon : ChevronLeftIcon}\n size={size}\n {...props}\n >\n {label ?? <BackText />}\n </IconButton>\n);\n"],"names":["createContext","jsx","useContext","useMemo","Container","Content","jsxs","IconButtonContainer","SuccessIcon","InformationIcon","QuestionIcon","USBIcon","Label","forwardRef","TabContainer","TextContainer","Text","Description","Error","ChevronLeftIcon","ChevronRightIcon","useKosTranslation","CloseIconWithBackground","CloseIcon","CompactCloseIcon","CompactMenuIcon","MenuIcon","CloseButton","DefaultCloseButton","DefaultOpenButton","each","ctx","raf2","config","useEffect","useLayoutEffect","useRef2","update","useState","useState2","useRef3","useEffect2","useEffect3","useRef4","useEffect4","is2","animated","is3","isAnimatedString2","host","is4","useRef","useCallback","each2","React","applyAnimatedValues","is5","eachProp2","G","G2","G3","FluidValue2","priority","G4","getFluidValue2","getAnimated2","toArray2","raf3","G5","frameLoop2","callFluidObservers2","loop","eachProp3","is6","toArray3","each3","eachProp4","flush2","raf4","flushCalls2","addFluidObserver2","each4","is7","is8","each5","useContext2","useIsomorphicLayoutEffect2","is9","is11","useMemo2","toArray4","useIsomorphicLayoutEffect4","useOnce3","each7","useForceUpdate2","useContext3","usePrev2","React2","getAnimatedType2","setAnimated2","isEqual2","getAnimated3","is14","getFluidValue3","toArray5","each10","getPayload2","G6","raf5","frameLoop3","hasFluidValue2","addFluidObserver3","removeFluidObserver2","self","callFluidObservers3","Globals","createStringInterpolator","prefix","unstable_batchedUpdates","colors","css","ModalContainer","createPortal","Suspense","ErrorIconWithBackground","InformationIconWithBackground","MessageInformationIconWithBackground","LoaderIconWithBackground","InformationQuestionIconWithBackground","MessageQuestionIconWithBackground","SuccessIconWithBackground","Fragment","Indicator","CardTitle","visibleItems","useGesture","value","DropdownIcon","ErrorIcon","kosComponent","module","require$$0","this","t","e","n","r","o","i","a","s","u","c","l","f","p","d","h","v","y","g","m","b","w","x","O","E","S","k","P","I","C","A","M","N","D","T","layoutName","KeyboardReact","inputCardStyles","error","InputCard","EyeOpenIcon","EyeOffIcon","className","useKosDateFormats","useKosTimeFormats","format","CloseSidebarIcon","StatusCardHeader","StatusDots","StepStatus","SwitchButton","useReactRouterNavigate","useSearchParams","useParams","to","useNavigate","TopNavigation","useLocation"],"mappings":"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","x_google_ignoreList":[37,38,39,40,41,64]}