@veeqo/ui 4.0.2-beta.3 → 4.0.2-beta.5
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/dist/components/Popover/Popover.d.ts +1 -1
- package/dist/components/Popover/hooks/useHandleFocus.d.ts +4 -0
- package/dist/components/Popover/types.d.ts +0 -5
- package/dist/index.esm.js +1 -14
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +1 -14
- package/dist/index.js.map +1 -1
- package/package.json +1 -4
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/components/BaseContainer/BaseContainer.ts","../src/components/Text/utils.ts","../src/theme/modules/colors.ts","../src/theme/modules/breakpoints.ts","../src/theme/modules/radius.ts","../src/theme/modules/shadows.ts","../src/theme/modules/sizes.ts","../src/theme/modules/text.ts","../src/theme/index.ts","../src/theme/modules/layers.ts","../src/components/Text/Text.ts","../src/components/Accordion/styled.ts","../src/tempIcons/UpArrowIcon.tsx","../node_modules/tslib/tslib.es6.js","../node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/prop-types/node_modules/react-is/index.js","../node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js","../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js","../node_modules/object-assign/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/prop-types/lib/has.js","../node_modules/prop-types/index.js","../node_modules/prop-types/factoryWithTypeCheckers.js","../node_modules/prop-types/checkPropTypes.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/focus-lock/dist/es2015/constants.js","../node_modules/use-callback-ref/dist/es2015/useMergeRef.js","../node_modules/use-callback-ref/dist/es2015/useRef.js","../node_modules/use-callback-ref/dist/es2015/assignRef.js","../node_modules/react-focus-lock/dist/es2015/FocusGuard.js","../node_modules/use-sidecar/dist/es2015/medium.js","../node_modules/react-focus-lock/dist/es2015/medium.js","../node_modules/react-focus-lock/dist/es2015/Lock.js","../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/focus-lock/dist/es2015/utils/array.js","../node_modules/focus-lock/dist/es2015/utils/is.js","../node_modules/focus-lock/dist/es2015/utils/tabOrder.js","../node_modules/focus-lock/dist/es2015/utils/tabUtils.js","../node_modules/focus-lock/dist/es2015/utils/tabbables.js","../node_modules/focus-lock/dist/es2015/utils/DOMutils.js","../node_modules/focus-lock/dist/es2015/utils/all-affected.js","../node_modules/focus-lock/dist/es2015/utils/getActiveElement.js","../node_modules/focus-lock/dist/es2015/utils/safe.js","../node_modules/focus-lock/dist/es2015/focusInside.js","../node_modules/focus-lock/dist/es2015/utils/correctFocus.js","../node_modules/focus-lock/dist/es2015/utils/firstFocus.js","../node_modules/focus-lock/dist/es2015/solver.js","../node_modules/focus-lock/dist/es2015/utils/auto-focus.js","../node_modules/focus-lock/dist/es2015/utils/parenting.js","../node_modules/focus-lock/dist/es2015/focusSolver.js","../node_modules/focus-lock/dist/es2015/moveFocusInside.js","../node_modules/focus-lock/dist/es2015/commands.js","../node_modules/react-focus-lock/dist/es2015/util.js","../node_modules/react-focus-lock/dist/es2015/Trap.js","../node_modules/focus-lock/dist/es2015/focusIsHidden.js","../node_modules/focus-lock/dist/es2015/focusables.js","../node_modules/react-clientside-effect/lib/index.es.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../node_modules/react-focus-lock/dist/es2015/Combination.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../src/utils/generateId.ts","../src/components/Portal/Portal.tsx","../src/components/Popover/styled.ts","../src/utils/buildClassnames.ts","../src/utils/color.ts","../src/components/Popover/Popover.tsx","../src/components/Popover/hooks/useUpdateAriaAnchor.ts","../src/components/Loader/TailSpin.tsx","../src/components/Loader/Grid.tsx","../src/components/Loader/ThreeDots.tsx","../src/components/Loader/Loader.tsx","../src/components/Button/components/styled.ts","../src/tempIcons/DropdownIcon.tsx","../src/components/Button/Button.tsx","../src/components/CardHeader/styled.ts","../src/tempIcons/DownArrowIcon.tsx","../src/tempIcons/CrossIcon.tsx","../src/components/CardHeader/CardHeader.tsx","../src/components/Card/styled.ts","../src/components/Card/Card.tsx","../src/components/ActionList/styled.ts","../src/components/ActionList/ActionList.tsx","../src/components/Anchor/styled.ts","../src/components/AnimatedDropdown/components/styled.ts","../src/components/AnimatedDropdown/components/BasicDropdown.tsx","../src/components/AnimatedDropdown/styled.ts","../src/components/AnimatedDropdown/AnimatedDropdown.tsx","../src/components/AnimatedDropdown/hooks/useClickAway.ts","../src/components/Avatar/styled.ts","../src/components/Tooltip/types.ts","../src/components/Tooltip/styled.ts","../src/components/Tooltip/Tooltip.tsx","../src/components/Badge/styled.ts","../src/components/Badge/Badge.tsx","../src/components/Banner/styled.ts","../src/components/Banner/Banner.tsx","../src/components/Breadcrumbs/components/styled.ts","../src/tempIcons/RightArrowIcon.tsx","../src/components/Breadcrumbs/components/Breadcrumb.tsx","../src/components/Breadcrumbs/Breadcrumbs.tsx","../src/components/Stack/Alignments.ts","../src/components/Stack/Stack.tsx","../src/components/Choice/components/styled.ts","../src/tempIcons/HelpIcon.tsx","../src/components/Choice/Choice.tsx","../src/components/Checkbox/styled.ts","../src/components/Checkbox/Checkbox.tsx","../src/components/Radio/styled.ts","../src/components/Radio/Radio.tsx","../src/components/ChoiceList/styled.ts","../src/components/ChoiceList/ChoiceList.tsx","../src/tempIcons/SuccessIcon.tsx","../src/tempIcons/ClipboardIcon.tsx","../src/components/CopyToClipboard/CopyToClipboard.tsx","../src/components/DataTable/utils/alignmentToFlex.ts","../src/components/DataTable/utils/parseWidth.ts","../src/components/DataTable/utils/generateTableCss.ts","../src/components/DataTable/utils/sumAll.ts","../src/components/DataTable/types.ts","../src/tempIcons/DoubleArrowIconIcon.tsx","../src/tempIcons/ArrowUpIcon.tsx","../src/tempIcons/ArrowDownIcon.tsx","../src/components/DataTable/utils/GetSortIcon.tsx","../src/components/DataTable/hooks/useCellWidths.ts","../src/components/DataTable/hooks/useColumns.ts","../src/components/DataTable/hooks/useDragToScroll.ts","../src/components/DataTable/hooks/useScrollPosition.ts","../src/components/DataTable/constants.ts","../src/components/DataTable/components/Header.ts","../src/components/DataTable/components/SelectionHeader.tsx","../src/components/DataTable/components/Cell.ts","../src/components/DataTable/components/SelectionCell.tsx","../src/components/DataTable/hooks/useSelection.tsx","../src/components/DataTable/components/ColumnHeader.tsx","../src/components/DataTable/renderers/renderHeader.tsx","../src/components/DataTable/utils/getNextSortState.ts","../src/components/DataTable/components/LoadingCellContent.ts","../src/components/DataTable/components/ActionBar.tsx","../src/tempIcons/VisibilityIcon.tsx","../src/tempIcons/VisibilityOffIcon.tsx","../src/tempIcons/ReorderIcon.tsx","../src/components/DataTable/components/EmptyBodyContent.ts","../src/components/DataTable/components/NoWrap.ts","../src/components/DataTable/components/Row.ts","../src/components/DataTable/components/ScrollContainer.ts","../src/components/DataTable/components/TableGrid.ts","../src/components/DataTable/components/Truncate.ts","../src/components/DataTable/components/Wrapper.ts","../src/components/DataTable/components/StickyHead.tsx","../src/components/DataTable/utils/getRowState.ts","../src/tempIcons/InfoIcon.tsx","../src/components/DataTable/DataTable.tsx","../src/components/DataTable/renderers/renderLoadingCell.tsx","../src/components/DataTable/renderers/renderCell.ts","../src/components/DataTable/renderers/renderNestedCell.tsx","../src/components/DataTable/renderers/renderFooter.tsx","../src/components/DataTable/components/ColumnMenu.tsx","../src/components/DescriptionList/DescriptionList.tsx","../src/components/DetailPage/styled.ts","../src/components/InputGroup/index.ts","../src/components/types.ts","../src/hoc/withLabels/styled.ts","../src/hoc/withLabels/withLabels.tsx","../src/components/TextField/styled.ts","../src/components/TextField/TextField.tsx","../src/components/TextField/index.ts","../src/components/DimensionsInput/styled.ts","../src/components/DimensionsInput/DimensionsInput.tsx","../src/hooks/useClickOutside.ts","../src/hooks/useDropdown.ts","../src/hooks/useFocusVisible.tsx","../src/hooks/useHover.ts","../src/hooks/useIsOverflowing.ts","../src/components/FilterTag/styled.ts","../src/components/FilterTag/FilterTag.tsx","../src/components/Grid/index.ts","../src/components/Image/components/PlaceholderImage.tsx","../src/components/Image/components/styled.ts","../src/components/Image/utils.ts","../src/components/LegacyDataTable/utils/constants.tsx","../src/tempIcons/CalendarIcon.tsx","../src/tempIcons/FailIcon.tsx","../src/components/LegacyDataTable/styled.ts","../src/components/LegacyDataTable/SpecificState/styled.ts","../src/components/LegacyDataTable/SpecificState/SpecificState.tsx","../src/components/LegacyDataTable/cells/styled.ts","../src/components/LegacyDataTable/cells/ClickableCell.tsx","../src/components/LegacyDataTable/cells/EditableCell.tsx","../src/components/LegacyDataTable/SkeletonContent/SkeletonContent.tsx","../src/components/LegacyDataTable/cells/SkeletonCell.tsx","../src/components/LegacyDataTable/utils/hooks.ts","../src/components/LegacyDataTable/StickyHeader.tsx","../src/components/LegacyDataTable/utils/index.ts","../src/components/LegacyDataTable/cells/SkeletonHeaderCell.tsx","../src/tempIcons/DoubleArrowAscIcon.tsx","../src/tempIcons/DoubleArrowDescIcon.tsx","../src/components/LegacyDataTable/LegacyDataTable.tsx","../src/components/LoginWithAmazonButton/styled.ts","../src/components/LoginWithAmazonButton/LoginWithAmazonButton.tsx","../src/components/Modal/components/styled.ts","../src/components/Modal/types.ts","../src/components/Modal/components/Dialog/constants.ts","../src/components/Modal/components/Dialog/styled.ts","../src/components/Modal/components/Dialog/Dialog.tsx","../src/components/PageHeader/styled.ts","../src/tempIcons/LeftArrowIcon.tsx","../src/components/Pagination/styled.ts","../src/components/Pagination/components.tsx","../src/components/Pagination/hooks/usePagination.ts","../src/tempIcons/StartArrowIcon.tsx","../src/tempIcons/EndArrowIcon.tsx","../src/utils/paginationList.ts","../src/components/PaginationRange/styled.ts","../src/components/PaginationRange/Items/Item/styled.ts","../src/components/PaginationRange/Items/Item/Item.tsx","../src/components/PaginationRange/Items/Items.tsx","../src/components/PaginationRange/PaginationRange.tsx","../src/components/Stepper/styled.ts","../src/components/Stepper/Stepper.tsx","../src/components/PriceInput/styled.ts","../src/components/PriceInput/PriceInput.tsx","../src/components/Search/styled.ts","../src/tempIcons/SearchIcon.tsx","../src/components/SegmentedControl/styled.ts","../src/components/Select/styled.ts","../src/components/Select/Select.tsx","../src/components/SimpleTable/styled.ts","../src/components/SimpleTable/SimpleTable.tsx","../src/components/Slider/styled.ts","../src/components/Slider/Slider.tsx","../src/components/Tag/Tag.ts","../src/components/ToastsLayout/components/styled.ts","../src/components/ToastsLayout/components/Toast.tsx","../src/tempIcons/AttentionIcon.tsx","../src/tempIcons/MergeIcon.tsx","../src/components/Toggle/styled.ts","../src/components/Toggle/Toggle.tsx","../src/components/ToggleButton/styled.ts","../src/components/VideoModal/components/styled.ts","../src/components/VideoModal/components/Popup.tsx","../src/components/VideoModal/styled.ts","../src/components/View/types.ts","../src/components/View/styled.ts","../src/tempIcons/EditIcon.tsx","../src/components/View/View.tsx","../src/components/WeightInput/styled.ts","../src/components/WeightInput/WeightInput.tsx","../src/components/WeightInput/types.ts","../src/components/Accordion/Accordion.tsx","../src/components/Anchor/Anchor.tsx","../src/components/Avatar/Avatar.tsx","../src/components/DetailPage/DetailPage.tsx","../src/components/Image/Image.tsx","../src/components/Modal/Modal.tsx","../src/components/PageHeader/PageHeader.tsx","../src/components/Pagination/Pagination.tsx","../src/components/Search/Search.tsx","../src/components/SegmentedControl/SegmentedControl.tsx","../src/components/ToastsLayout/ToastsLayout.tsx","../src/components/ToggleButton/ToggleButton.tsx","../src/components/VideoModal/VideoModal.tsx","../src/hooks/useDebounce.ts","../src/components/DataTable/hooks/useNested.ts","../src/hooks/useTabs.ts","../src/hoc/withDeprecated.tsx"],"sourcesContent":["import styled from 'styled-components';\nexport const BaseContainer = styled.div.withConfig({ displayName: \"vui--BaseContainer\", componentId: \"vui--bg86rb\" }) `box-sizing:border-box;position:relative;margin:0;padding:0;`;\n//# sourceMappingURL=BaseContainer.js.map","const componentMap = {\n inputLabel: 'label',\n inputLabelSmall: 'label',\n headingSmall: 'h3',\n headingMedium: 'h3',\n headingLarge: 'h2',\n headingXL: 'h1',\n headingXXL: 'h1',\n // Deprecated, but quickfix for A11y.\n button: 'button',\n buttonSmall: 'button',\n};\nexport const getComponentOverride = (as, variant) => {\n if (as)\n return as;\n if (variant)\n return componentMap[variant];\n return undefined;\n};\n//# sourceMappingURL=utils.js.map","export const colors = {\n brand: {\n blue: {\n lightest: '#E4F0F9',\n light: '#93C6E8',\n base: '#4CA1D9',\n dark: '#3878A2',\n darkest: '#1A384B',\n },\n peach: {\n lightest: '#FDECE9',\n light: '#F8B2A9',\n base: '#F48070',\n dark: '#B65F53',\n darkest: '#562D27',\n },\n },\n neutral: {\n ink: {\n lightest: '#959FA8',\n light: '#637381',\n base: '#37424D',\n dark: '#1B2126',\n },\n grey: {\n lightest: '#FAFAFB',\n light: '#F2F3F5',\n base: '#DFE3E8',\n dark: '#CDD1D5',\n },\n greyBlue: {\n lightest: '#AAC5D8',\n light: '#558BB1',\n base: '#406885',\n dark: '#1E313E',\n },\n },\n secondary: {\n red: {\n lightest: '#FDEEEE',\n light: '#F7BCBC',\n base: '#EB5757',\n dark: '#A53D3D',\n darkest: '#5E2323',\n },\n yellow: {\n lightest: '#FFF6D9',\n light: '#FFE999',\n base: '#FFC900',\n dark: '#BF9600',\n darkest: '#594600',\n },\n green: {\n lightest: '#E9F7EF',\n light: '#BEE7CF',\n base: '#27AE60',\n dark: '#1B7A43',\n darkest: '#104626',\n },\n lime: {\n lightest: '#F6FAEB',\n light: '#DBEBAE',\n base: '#A5CD35',\n dark: '#7B9927',\n darkest: '#394712',\n },\n teal: {\n lightest: '#E5F8F5',\n light: '#99E5D7',\n base: '#00BD9A',\n dark: '#00715C',\n darkest: '#00392E',\n },\n aqua: {\n lightest: '#EEFAFE',\n light: '#BBEBFA',\n base: '#56CCF2',\n dark: '#3C8FA9',\n darkest: '#225261',\n },\n purple: {\n lightest: '#F6EFFC',\n light: '#D9C0F1',\n base: '#A162DD',\n dark: '#694090',\n darkest: '#38224D',\n },\n blue: {\n lightest: '#D9EBF8',\n light: '#80BCE8',\n base: '#0079D1',\n dark: '#005A9C',\n darkest: '#003053',\n },\n pink: {\n lightest: '#FFF1FC',\n light: '#FFC7F3',\n base: '#FFA3EB',\n dark: '#BF7AB0',\n darkest: '#593852',\n },\n orange: {\n lightest: '#FEF5ED',\n light: '#FAD6B7',\n base: '#F2994A',\n dark: '#9D6330',\n darkest: '#613D1E',\n },\n },\n system: {\n scrollbar: {\n thumb: 'rgba(99, 115, 129, .5)',\n background: 'transparent',\n },\n },\n};\n//# sourceMappingURL=colors.js.map","export const breakpoints = {\n mobile: '640px',\n tablet: '720px',\n lgTablet: '960px',\n desktop: '1280px',\n lgDesktop: '1440px',\n};\n//# sourceMappingURL=breakpoints.js.map","export const radius = {\n sm: '0.125rem',\n base: '0.25rem',\n md: '0.5rem',\n lg: '0.75rem',\n full: '50%',\n};\n//# sourceMappingURL=radius.js.map","export var Shadows;\n(function (Shadows) {\n Shadows[\"sm\"] = \"0px 1px 3px rgba(55, 66, 77, 0.15)\";\n Shadows[\"base\"] = \"0px 4px 6px rgba(27, 33, 38, 0.2)\";\n Shadows[\"md\"] = \"0px 10px 15px rgba(27, 33, 38, 0.2)\";\n Shadows[\"lg\"] = \"0px 20px 25px rgba(27, 33, 38, 0.2)\";\n})(Shadows || (Shadows = {}));\n//# sourceMappingURL=shadows.js.map","var SizeAlias;\n(function (SizeAlias) {\n SizeAlias[\"none\"] = \"none\";\n SizeAlias[\"line\"] = \"line\";\n SizeAlias[\"xs\"] = \"xs\";\n SizeAlias[\"sm\"] = \"sm\";\n SizeAlias[\"base\"] = \"base\";\n SizeAlias[\"md\"] = \"md\";\n SizeAlias[\"lg\"] = \"lg\";\n SizeAlias[\"xl\"] = \"xl\";\n SizeAlias[\"xxl\"] = \"xxl\";\n})(SizeAlias || (SizeAlias = {}));\nfunction buildSizeScale({ increment, unit, count }) {\n const sizes = {};\n /* eslint-disable-next-line no-plusplus */\n for (let i = 0; i <= count; i++) {\n const value = i * increment;\n sizes[i] = `${value}${unit}`;\n }\n return sizes;\n}\nexport const sizeScale = buildSizeScale({ increment: 0.25, unit: 'rem', count: 20 });\nexport const sizeAliases = {\n [SizeAlias.none]: '0',\n [SizeAlias.line]: '1px',\n [SizeAlias.xs]: sizeScale[1],\n [SizeAlias.sm]: sizeScale[2],\n [SizeAlias.base]: sizeScale[4],\n [SizeAlias.md]: sizeScale[6],\n [SizeAlias.lg]: sizeScale[8],\n [SizeAlias.xl]: sizeScale[12],\n [SizeAlias.xxl]: sizeScale[16],\n};\nexport const sizes = Object.assign(Object.assign({}, sizeAliases), sizeScale);\n//# sourceMappingURL=sizes.js.map","import { colors } from './colors';\nexport const common = {\n fontFamily: 'Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol',\n};\nexport const text = {\n headingXXL: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '40px',\n lineHeight: '56px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '-0.022rem',\n },\n headingXL: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '28px',\n lineHeight: '40px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '-0.02rem',\n },\n headingLarge: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '24px',\n lineHeight: '32px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '-0.019rem',\n },\n headingMedium: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '20px',\n lineHeight: '28px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '-0.017rem',\n },\n headingSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '16px',\n lineHeight: '20px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '-0.011rem',\n },\n headingTable: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n subheadingLarge: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '20px',\n lineHeight: '28px',\n color: colors.neutral.ink.light,\n textDecoration: 'none',\n letterSpacing: '-0.017rem',\n },\n subheadingMedium: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '16px',\n lineHeight: '24px',\n color: colors.neutral.ink.light,\n textDecoration: 'none',\n letterSpacing: '-0.011rem',\n },\n subheadingSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.light,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n subheadingSmallBold: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n body: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '-0.006rem',\n },\n bodySmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n bodyBold: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '-0.006rem',\n },\n bodyBoldDark: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.neutral.ink.dark,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n bodySmallBold: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n button: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '16px',\n lineHeight: '24px',\n color: colors.secondary.blue.base,\n textDecoration: 'none',\n letterSpacing: '-0.011rem',\n },\n buttonSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.secondary.blue.base,\n textDecoration: 'none',\n letterSpacing: '-0.006rem',\n },\n linkLarge: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '20px',\n lineHeight: '28px',\n color: colors.secondary.blue.base,\n textDecoration: 'underline',\n letterSpacing: '-0.017rem',\n },\n linkMedium: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '16px',\n lineHeight: '24px',\n color: colors.secondary.blue.base,\n textDecoration: 'underline',\n letterSpacing: '-0.011rem',\n },\n link: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.secondary.blue.base,\n textDecoration: 'underline',\n letterSpacing: '-0.006rem',\n },\n linkSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.secondary.blue.base,\n textDecoration: 'underline',\n letterSpacing: '0',\n },\n inputLabel: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '-0.006rem',\n },\n inputLabelSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n hintText: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.light,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n placeholder: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.neutral.ink.lightest,\n textDecoration: 'none',\n letterSpacing: '-0.006rem',\n },\n placeholderSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.lightest,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n placeholderCode: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.neutral.ink.lightest,\n textDecoration: 'none',\n letterSpacing: '0.5rem',\n },\n placeholderCodeSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.lightest,\n textDecoration: 'none',\n letterSpacing: '0.375rem',\n },\n error: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.secondary.red.base,\n textDecoration: 'none',\n letterSpacing: '-0.006rem',\n },\n errorSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.secondary.red.base,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n successSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.secondary.green.base,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n};\n//# sourceMappingURL=text.js.map","import { colors } from './modules/colors';\nimport { breakpoints } from './modules/breakpoints';\nimport { layers } from './modules/layers';\nimport { radius } from './modules/radius';\nimport { Shadows } from './modules/shadows';\nimport { sizes } from './modules/sizes';\nimport { text, common } from './modules/text';\nexport const theme = Object.assign(Object.assign({}, common), { breakpoints,\n colors,\n layers,\n radius, shadows: Shadows, sizes,\n text });\n//# sourceMappingURL=index.js.map","export const layers = {\n base: 0,\n popup: 1000,\n modal: 2000,\n tooltip: 3000,\n};\n//# sourceMappingURL=layers.js.map","import styled from 'styled-components';\nimport { getComponentOverride } from './utils';\nimport { theme } from '../../theme';\nconst { text, colors, fontFamily } = theme;\nexport const Text = styled.span.attrs(({ as, variant }) => ({\n as: getComponentOverride(as, variant),\n})).withConfig({ displayName: \"vui--Text\", componentId: \"vui--m0sc57\" }) `box-sizing:border-box;display:inline-block;margin:0;padding:0;font-style:normal;font-weight:normal;font-size:12px;font-family:${fontFamily};line-height:16px;color:#37424d;${({ variant }) => (variant === 'button' || variant === 'buttonSmall') &&\n `\n cursor: pointer;\n background-color: transparent;\n border: 0;\n `} ${({ variant, muted = false }) => {\n if (!variant)\n return '';\n const color = muted ? colors.neutral.ink.lightest : text[variant].color;\n return `\n font-family: ${text[variant].fontFamily};\n font-style: ${text[variant].fontStyle};\n font-weight: ${text[variant].fontWeight};\n font-size: ${text[variant].fontSize};\n line-height: ${text[variant].lineHeight};\n color: ${color};\n text-decoration: ${text[variant].textDecoration};\n letter-spacing: ${text[variant].letterSpacing};\n `;\n}}`;\n//# sourceMappingURL=Text.js.map","import styled from 'styled-components';\nimport { motion } from 'framer-motion';\nimport { BaseContainer } from '../BaseContainer';\nimport { Text } from '../Text';\nimport { theme } from '../../theme';\nimport { sizes } from '../../theme/modules/sizes';\nconst TapBarChild = styled(BaseContainer).withConfig({ displayName: \"vui--TapBarChild\", componentId: \"vui--vb6lvt\" }) `display:flex;flex-direction:row;align-items:center;`;\nconst Left = styled(TapBarChild).withConfig({ displayName: \"vui--Left\", componentId: \"vui--19b2coz\" }) `svg{margin-right:12px;height:${sizes.base};width:${sizes.base};color:${({ glyphColor }) => glyphColor};}`;\nconst Right = styled(TapBarChild).withConfig({ displayName: \"vui--Right\", componentId: \"vui--13mhsyo\" }) `justify-content:flex-end;flex-grow:2;`;\n/**\n * Due to unique behaviour observed in Safari, we override the outline property when\n * the accordion is focussed.\n */\nconst AccordionSummary = styled.summary.withConfig({ displayName: \"vui--AccordionSummary\", componentId: \"vui--1lgp9cv\" }) `display:flex;flex-direction:column;padding:12px;border-radius:4px;user-select:none;cursor:pointer;border:1px solid ${theme.colors.neutral.grey.dark};:focus{outline:none;box-shadow:0 0 0 2px ${theme.colors.secondary.blue.light};}:active{box-shadow:0 0 0 2px ${theme.colors.secondary.blue.light};}`;\nconst Top = styled(BaseContainer).withConfig({ displayName: \"vui--Top\", componentId: \"vui--11peosj\" }) `display:flex;flex-direction:row;align-items:center;height:16px;`;\nconst Description = styled(Text).withConfig({ displayName: \"vui--Description\", componentId: \"vui--1e00qnt\" }) `margin-top:8px;`;\nconst AccordionContent = styled(motion(BaseContainer)).withConfig({ displayName: \"vui--AccordionContent\", componentId: \"vui--2wgxvx\" }) `margin-top:4px;background:rgba(217, 235, 248, 0.5);padding:10px 26px;`;\nconst AccordionDetails = styled.details.withConfig({ displayName: \"vui--AccordionDetails\", componentId: \"vui--1dg5oex\" }) `summary{list-style-type:none;::-webkit-details-marker{display:none;}}`;\nexport { AccordionSummary, Top, Text, Left, Right, Description, AccordionDetails, AccordionContent, };\n//# sourceMappingURL=styled.js.map","import React from 'react';\nimport { sizes } from '../theme/modules/sizes';\nexport const UpArrowIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", role: \"presentation\", height: sizes.md }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M4.91021 10.47L7.97021 7.4167L11.0302 10.47L11.9702 9.53003L7.97021 5.53003L3.97021 9.53003L4.91021 10.47Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=UpArrowIcon.js.map","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\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'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\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'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n })();\n}\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\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'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","module.exports = Function.call.bind(Object.prototype.hasOwnProperty);\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\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\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\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'use strict';\n\nvar ReactIs = require('react-is');\nvar assign = require('object-assign');\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\nvar has = require('./lib/has');\nvar checkPropTypes = require('./checkPropTypes');\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\nfunction emptyFunctionThatReturnsNull() {\n return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<<anonymous>>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bigint: createPrimitiveTypeChecker('bigint'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n elementType: createElementTypeTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message, data) {\n this.message = message;\n this.data = data && typeof data === 'object' ? data: {};\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n printWarning(\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),\n {expectedType: expectedType}\n );\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!ReactIs.isValidElementType(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n if (process.env.NODE_ENV !== 'production') {\n if (arguments.length > 1) {\n printWarning(\n 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n );\n } else {\n printWarning('Invalid argument supplied to oneOf, expected an array.');\n }\n }\n return emptyFunctionThatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n var type = getPreciseType(value);\n if (type === 'symbol') {\n return String(value);\n }\n return value;\n });\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (has(propValue, key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunctionThatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n printWarning(\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n );\n return emptyFunctionThatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var expectedTypes = [];\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);\n if (checkerResult == null) {\n return null;\n }\n if (checkerResult.data && has(checkerResult.data, 'expectedType')) {\n expectedTypes.push(checkerResult.data.expectedType);\n }\n }\n var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function invalidValidatorError(componentName, location, propFullName, key, type) {\n return new PropTypeError(\n (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'\n );\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (typeof checker !== 'function') {\n return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (has(shapeTypes, key) && typeof checker !== 'function') {\n return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n }\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // falsy value can't be a Symbol\n if (!propValue) {\n return false;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\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'use strict';\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n var loggedTypeFailures = {};\n var has = require('./lib/has');\n\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) { /**/ }\n };\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (process.env.NODE_ENV !== 'production') {\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n var err = Error(\n (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +\n 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'\n );\n err.name = 'Invariant Violation';\n throw err;\n }\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n if (error && !(error instanceof Error)) {\n printWarning(\n (componentName || 'React class') + ': type specification of ' +\n location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n 'You may have forgotten to pass an argument to the type checker ' +\n 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n 'shape all require an argument).'\n );\n }\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n printWarning(\n 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n );\n }\n }\n }\n }\n}\n\n/**\n * Resets warning cache when testing.\n *\n * @private\n */\ncheckPropTypes.resetWarningCache = function() {\n if (process.env.NODE_ENV !== 'production') {\n loggedTypeFailures = {};\n }\n}\n\nmodule.exports = checkPropTypes;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\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'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * defines a focus group\n */\nexport var FOCUS_GROUP = 'data-focus-lock';\n/**\n * disables element discovery inside a group marked by key\n */\nexport var FOCUS_DISABLED = 'data-focus-lock-disabled';\n/**\n * allows uncontrolled focus within the marked area, effectively disabling focus lock for it's content\n */\nexport var FOCUS_ALLOW = 'data-no-focus-lock';\n/**\n * instructs autofocus engine to pick default autofocus inside a given node\n * can be set on the element or container\n */\nexport var FOCUS_AUTO = 'data-autofocus-inside';\n/**\n * instructs autofocus to ignore elements within a given node\n * can be set on the element or container\n */\nexport var FOCUS_NO_AUTOFOCUS = 'data-no-autofocus';\n","import { assignRef } from './assignRef';\nimport { useCallbackRef } from './useRef';\n/**\n * Merges two or more refs together providing a single interface to set their value\n * @param {RefObject|Ref} refs\n * @returns {MutableRefObject} - a new ref, which translates all changes to {refs}\n *\n * @see {@link mergeRefs} a version without buit-in memoization\n * @see https://github.com/theKashey/use-callback-ref#usemergerefs\n * @example\n * const Component = React.forwardRef((props, ref) => {\n * const ownRef = useRef();\n * const domRef = useMergeRefs([ref, ownRef]); // 👈 merge together\n * return <div ref={domRef}>...</div>\n * }\n */\nexport function useMergeRefs(refs, defaultValue) {\n return useCallbackRef(defaultValue || null, function (newValue) { return refs.forEach(function (ref) { return assignRef(ref, newValue); }); });\n}\n","import { useState } from 'react';\n/**\n * creates a MutableRef with ref change callback\n * @param initialValue - initial ref value\n * @param {Function} callback - a callback to run when value changes\n *\n * @example\n * const ref = useCallbackRef(0, (newValue, oldValue) => console.log(oldValue, '->', newValue);\n * ref.current = 1;\n * // prints 0 -> 1\n *\n * @see https://reactjs.org/docs/hooks-reference.html#useref\n * @see https://github.com/theKashey/use-callback-ref#usecallbackref---to-replace-reactuseref\n * @returns {MutableRefObject}\n */\nexport function useCallbackRef(initialValue, callback) {\n var ref = useState(function () { return ({\n // value\n value: initialValue,\n // last callback\n callback: callback,\n // \"memoized\" public interface\n facade: {\n get current() {\n return ref.value;\n },\n set current(value) {\n var last = ref.value;\n if (last !== value) {\n ref.value = value;\n ref.callback(value, last);\n }\n },\n },\n }); })[0];\n // update callback\n ref.callback = callback;\n return ref.facade;\n}\n","/**\n * Assigns a value for a given ref, no matter of the ref format\n * @param {RefObject} ref - a callback function or ref object\n * @param value - a new value\n *\n * @see https://github.com/theKashey/use-callback-ref#assignref\n * @example\n * const refObject = useRef();\n * const refFn = (ref) => {....}\n *\n * assignRef(refObject, \"refValue\");\n * assignRef(refFn, \"refValue\");\n */\nexport function assignRef(ref, value) {\n if (typeof ref === 'function') {\n ref(value);\n }\n else if (ref) {\n ref.current = value;\n }\n return ref;\n}\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nexport var hiddenGuard = {\n width: '1px',\n height: '0px',\n padding: 0,\n overflow: 'hidden',\n position: 'fixed',\n top: '1px',\n left: '1px'\n};\n\nvar InFocusGuard = function InFocusGuard(_ref) {\n var _ref$children = _ref.children,\n children = _ref$children === void 0 ? null : _ref$children;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-first\",\n \"data-focus-guard\": true,\n \"data-focus-auto-guard\": true,\n style: hiddenGuard\n }), children, children && /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-last\",\n \"data-focus-guard\": true,\n \"data-focus-auto-guard\": true,\n style: hiddenGuard\n }));\n};\n\nInFocusGuard.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node\n} : {};\nexport default InFocusGuard;","import { __assign } from \"tslib\";\nfunction ItoI(a) {\n return a;\n}\nfunction innerCreateMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n var buffer = [];\n var assigned = false;\n var medium = {\n read: function () {\n if (assigned) {\n throw new Error('Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.');\n }\n if (buffer.length) {\n return buffer[buffer.length - 1];\n }\n return defaults;\n },\n useMedium: function (data) {\n var item = middleware(data, assigned);\n buffer.push(item);\n return function () {\n buffer = buffer.filter(function (x) { return x !== item; });\n };\n },\n assignSyncMedium: function (cb) {\n assigned = true;\n while (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n }\n buffer = {\n push: function (x) { return cb(x); },\n filter: function () { return buffer; },\n };\n },\n assignMedium: function (cb) {\n assigned = true;\n var pendingQueue = [];\n if (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n pendingQueue = buffer;\n }\n var executeQueue = function () {\n var cbs = pendingQueue;\n pendingQueue = [];\n cbs.forEach(cb);\n };\n var cycle = function () { return Promise.resolve().then(executeQueue); };\n cycle();\n buffer = {\n push: function (x) {\n pendingQueue.push(x);\n cycle();\n },\n filter: function (filter) {\n pendingQueue = pendingQueue.filter(filter);\n return buffer;\n },\n };\n },\n };\n return medium;\n}\nexport function createMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n return innerCreateMedium(defaults, middleware);\n}\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function createSidecarMedium(options) {\n if (options === void 0) { options = {}; }\n var medium = innerCreateMedium(null);\n medium.options = __assign({ async: true, ssr: false }, options);\n return medium;\n}\n","import { createMedium, createSidecarMedium } from 'use-sidecar';\nexport var mediumFocus = createMedium({}, function (_ref) {\n var target = _ref.target,\n currentTarget = _ref.currentTarget;\n return {\n target: target,\n currentTarget: currentTarget\n };\n});\nexport var mediumBlur = createMedium();\nexport var mediumEffect = createMedium();\nexport var mediumSidecar = createSidecarMedium({\n async: true\n});","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport { node, bool, string, any, arrayOf, oneOfType, object, func } from 'prop-types';\nimport * as constants from 'focus-lock/constants';\nimport { useMergeRefs } from 'use-callback-ref';\nimport { useEffect } from 'react';\nimport { hiddenGuard } from './FocusGuard';\nimport { mediumFocus, mediumBlur, mediumSidecar } from './medium';\nvar emptyArray = [];\nvar FocusLock = /*#__PURE__*/React.forwardRef(function FocusLockUI(props, parentRef) {\n var _extends2;\n\n var _React$useState = React.useState(),\n realObserved = _React$useState[0],\n setObserved = _React$useState[1];\n\n var observed = React.useRef();\n var isActive = React.useRef(false);\n var originalFocusedElement = React.useRef(null);\n var children = props.children,\n _props$disabled = props.disabled,\n disabled = _props$disabled === void 0 ? false : _props$disabled,\n _props$noFocusGuards = props.noFocusGuards,\n noFocusGuards = _props$noFocusGuards === void 0 ? false : _props$noFocusGuards,\n _props$persistentFocu = props.persistentFocus,\n persistentFocus = _props$persistentFocu === void 0 ? false : _props$persistentFocu,\n _props$crossFrame = props.crossFrame,\n crossFrame = _props$crossFrame === void 0 ? true : _props$crossFrame,\n _props$autoFocus = props.autoFocus,\n autoFocus = _props$autoFocus === void 0 ? true : _props$autoFocus,\n allowTextSelection = props.allowTextSelection,\n group = props.group,\n className = props.className,\n whiteList = props.whiteList,\n hasPositiveIndices = props.hasPositiveIndices,\n _props$shards = props.shards,\n shards = _props$shards === void 0 ? emptyArray : _props$shards,\n _props$as = props.as,\n Container = _props$as === void 0 ? 'div' : _props$as,\n _props$lockProps = props.lockProps,\n containerProps = _props$lockProps === void 0 ? {} : _props$lockProps,\n SideCar = props.sideCar,\n _props$returnFocus = props.returnFocus,\n shouldReturnFocus = _props$returnFocus === void 0 ? false : _props$returnFocus,\n focusOptions = props.focusOptions,\n onActivationCallback = props.onActivation,\n onDeactivationCallback = props.onDeactivation;\n\n var _React$useState2 = React.useState({}),\n id = _React$useState2[0];\n\n var onActivation = React.useCallback(function () {\n originalFocusedElement.current = originalFocusedElement.current || document && document.activeElement;\n\n if (observed.current && onActivationCallback) {\n onActivationCallback(observed.current);\n }\n\n isActive.current = true;\n }, [onActivationCallback]);\n var onDeactivation = React.useCallback(function () {\n isActive.current = false;\n\n if (onDeactivationCallback) {\n onDeactivationCallback(observed.current);\n }\n }, [onDeactivationCallback]);\n useEffect(function () {\n if (!disabled) {\n originalFocusedElement.current = null;\n }\n }, []);\n var returnFocus = React.useCallback(function (allowDefer) {\n var returnFocusTo = originalFocusedElement.current;\n\n if (returnFocusTo && returnFocusTo.focus) {\n var howToReturnFocus = typeof shouldReturnFocus === 'function' ? shouldReturnFocus(returnFocusTo) : shouldReturnFocus;\n\n if (howToReturnFocus) {\n var returnFocusOptions = typeof howToReturnFocus === 'object' ? howToReturnFocus : undefined;\n originalFocusedElement.current = null;\n\n if (allowDefer) {\n Promise.resolve().then(function () {\n return returnFocusTo.focus(returnFocusOptions);\n });\n } else {\n returnFocusTo.focus(returnFocusOptions);\n }\n }\n }\n }, [shouldReturnFocus]);\n var onFocus = React.useCallback(function (event) {\n if (isActive.current) {\n mediumFocus.useMedium(event);\n }\n }, []);\n var onBlur = mediumBlur.useMedium;\n var setObserveNode = React.useCallback(function (newObserved) {\n if (observed.current !== newObserved) {\n observed.current = newObserved;\n setObserved(newObserved);\n }\n }, []);\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof allowTextSelection !== 'undefined') {\n console.warn('React-Focus-Lock: allowTextSelection is deprecated and enabled by default');\n }\n\n React.useEffect(function () {\n if (!observed.current && typeof Container !== 'string') {\n console.error('FocusLock: could not obtain ref to internal node');\n }\n }, []);\n }\n\n var lockProps = _extends((_extends2 = {}, _extends2[constants.FOCUS_DISABLED] = disabled && 'disabled', _extends2[constants.FOCUS_GROUP] = group, _extends2), containerProps);\n\n var hasLeadingGuards = noFocusGuards !== true;\n var hasTailingGuards = hasLeadingGuards && noFocusGuards !== 'tail';\n var mergedRef = useMergeRefs([parentRef, setObserveNode]);\n return /*#__PURE__*/React.createElement(React.Fragment, null, hasLeadingGuards && [\n /*#__PURE__*/\n React.createElement(\"div\", {\n key: \"guard-first\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 0,\n style: hiddenGuard\n }), hasPositiveIndices ? /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-nearest\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 1,\n style: hiddenGuard\n }) : null], !disabled && /*#__PURE__*/React.createElement(SideCar, {\n id: id,\n sideCar: mediumSidecar,\n observed: realObserved,\n disabled: disabled,\n persistentFocus: persistentFocus,\n crossFrame: crossFrame,\n autoFocus: autoFocus,\n whiteList: whiteList,\n shards: shards,\n onActivation: onActivation,\n onDeactivation: onDeactivation,\n returnFocus: returnFocus,\n focusOptions: focusOptions\n }), /*#__PURE__*/React.createElement(Container, _extends({\n ref: mergedRef\n }, lockProps, {\n className: className,\n onBlur: onBlur,\n onFocus: onFocus\n }), children), hasTailingGuards && /*#__PURE__*/React.createElement(\"div\", {\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 0,\n style: hiddenGuard\n }));\n});\nFocusLock.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: node,\n disabled: bool,\n returnFocus: oneOfType([bool, object, func]),\n focusOptions: object,\n noFocusGuards: bool,\n hasPositiveIndices: bool,\n allowTextSelection: bool,\n autoFocus: bool,\n persistentFocus: bool,\n crossFrame: bool,\n group: string,\n className: string,\n whiteList: func,\n shards: arrayOf(any),\n as: oneOfType([string, func, object]),\n lockProps: object,\n onActivation: func,\n onDeactivation: func,\n sideCar: any.isRequired\n} : {};\nexport default FocusLock;","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","/*\nIE11 support\n */\nexport var toArray = function (a) {\n var ret = Array(a.length);\n for (var i = 0; i < a.length; ++i) {\n ret[i] = a[i];\n }\n return ret;\n};\nexport var asArray = function (a) { return (Array.isArray(a) ? a : [a]); };\nexport var getFirst = function (a) { return (Array.isArray(a) ? a[0] : a); };\n","import { FOCUS_NO_AUTOFOCUS } from '../constants';\nvar isElementHidden = function (node) {\n // we can measure only \"elements\"\n // consider others as \"visible\"\n if (node.nodeType !== Node.ELEMENT_NODE) {\n return false;\n }\n var computedStyle = window.getComputedStyle(node, null);\n if (!computedStyle || !computedStyle.getPropertyValue) {\n return false;\n }\n return (computedStyle.getPropertyValue('display') === 'none' || computedStyle.getPropertyValue('visibility') === 'hidden');\n};\nvar getParentNode = function (node) {\n // DOCUMENT_FRAGMENT_NODE can also point on ShadowRoot. In this case .host will point on the next node\n return node.parentNode && node.parentNode.nodeType === Node.DOCUMENT_FRAGMENT_NODE\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node.parentNode.host\n : node.parentNode;\n};\nvar isTopNode = function (node) {\n // @ts-ignore\n return node === document || (node && node.nodeType === Node.DOCUMENT_NODE);\n};\nvar isVisibleUncached = function (node, checkParent) {\n return !node || isTopNode(node) || (!isElementHidden(node) && checkParent(getParentNode(node)));\n};\nexport var isVisibleCached = function (visibilityCache, node) {\n var cached = visibilityCache.get(node);\n if (cached !== undefined) {\n return cached;\n }\n var result = isVisibleUncached(node, isVisibleCached.bind(undefined, visibilityCache));\n visibilityCache.set(node, result);\n return result;\n};\nvar isAutoFocusAllowedUncached = function (node, checkParent) {\n return node && !isTopNode(node) ? (isAutoFocusAllowed(node) ? checkParent(getParentNode(node)) : false) : true;\n};\nexport var isAutoFocusAllowedCached = function (cache, node) {\n var cached = cache.get(node);\n if (cached !== undefined) {\n return cached;\n }\n var result = isAutoFocusAllowedUncached(node, isAutoFocusAllowedCached.bind(undefined, cache));\n cache.set(node, result);\n return result;\n};\nexport var getDataset = function (node) {\n // @ts-ignore\n return node.dataset;\n};\nexport var isHTMLButtonElement = function (node) { return node.tagName === 'BUTTON'; };\nexport var isHTMLInputElement = function (node) { return node.tagName === 'INPUT'; };\nexport var isRadioElement = function (node) {\n return isHTMLInputElement(node) && node.type === 'radio';\n};\nexport var notHiddenInput = function (node) {\n return !((isHTMLInputElement(node) || isHTMLButtonElement(node)) && (node.type === 'hidden' || node.disabled));\n};\nexport var isAutoFocusAllowed = function (node) {\n var attribute = node.getAttribute(FOCUS_NO_AUTOFOCUS);\n return ![true, 'true', ''].includes(attribute);\n};\nexport var isGuard = function (node) { var _a; return Boolean(node && ((_a = getDataset(node)) === null || _a === void 0 ? void 0 : _a.focusGuard)); };\nexport var isNotAGuard = function (node) { return !isGuard(node); };\nexport var isDefined = function (x) { return Boolean(x); };\n","import { toArray } from './array';\nexport var tabSort = function (a, b) {\n var tabDiff = a.tabIndex - b.tabIndex;\n var indexDiff = a.index - b.index;\n if (tabDiff) {\n if (!a.tabIndex) {\n return 1;\n }\n if (!b.tabIndex) {\n return -1;\n }\n }\n return tabDiff || indexDiff;\n};\nexport var orderByTabIndex = function (nodes, filterNegative, keepGuards) {\n return toArray(nodes)\n .map(function (node, index) { return ({\n node: node,\n index: index,\n tabIndex: keepGuards && node.tabIndex === -1 ? ((node.dataset || {}).focusGuard ? 0 : -1) : node.tabIndex,\n }); })\n .filter(function (data) { return !filterNegative || data.tabIndex >= 0; })\n .sort(tabSort);\n};\n","import { FOCUS_AUTO } from '../constants';\nimport { toArray } from './array';\nimport { tabbables } from './tabbables';\nvar queryTabbables = tabbables.join(',');\nvar queryGuardTabbables = \"\".concat(queryTabbables, \", [data-focus-guard]\");\nvar getFocusablesWithShadowDom = function (parent, withGuards) {\n return toArray((parent.shadowRoot || parent).children).reduce(function (acc, child) {\n return acc.concat(child.matches(withGuards ? queryGuardTabbables : queryTabbables) ? [child] : [], getFocusablesWithShadowDom(child));\n }, []);\n};\nvar getFocusablesWithIFrame = function (parent, withGuards) {\n var _a;\n // contentDocument of iframe will be null if current origin cannot access it\n if (parent instanceof HTMLIFrameElement && ((_a = parent.contentDocument) === null || _a === void 0 ? void 0 : _a.body)) {\n return getFocusables([parent.contentDocument.body], withGuards);\n }\n return [parent];\n};\nexport var getFocusables = function (parents, withGuards) {\n return parents.reduce(function (acc, parent) {\n var _a;\n var focusableWithShadowDom = getFocusablesWithShadowDom(parent, withGuards);\n var focusableWithIframes = (_a = []).concat.apply(_a, focusableWithShadowDom.map(function (node) { return getFocusablesWithIFrame(node, withGuards); }));\n return acc.concat(\n // add all tabbables inside and within shadow DOMs in DOM order\n focusableWithIframes, \n // add if node is tabbable itself\n parent.parentNode\n ? toArray(parent.parentNode.querySelectorAll(queryTabbables)).filter(function (node) { return node === parent; })\n : []);\n }, []);\n};\n/**\n * return a list of focusable nodes within an area marked as \"auto-focusable\"\n * @param parent\n */\nexport var getParentAutofocusables = function (parent) {\n var parentFocus = parent.querySelectorAll(\"[\".concat(FOCUS_AUTO, \"]\"));\n return toArray(parentFocus)\n .map(function (node) { return getFocusables([node]); })\n .reduce(function (acc, nodes) { return acc.concat(nodes); }, []);\n};\n","/**\n * list of the object to be considered as focusable\n */\nexport var tabbables = [\n 'button:enabled',\n 'select:enabled',\n 'textarea:enabled',\n 'input:enabled',\n // elements with explicit roles will also use explicit tabindex\n // '[role=\"button\"]',\n 'a[href]',\n 'area[href]',\n 'summary',\n 'iframe',\n 'object',\n 'embed',\n 'audio[controls]',\n 'video[controls]',\n '[tabindex]',\n '[contenteditable]',\n '[autofocus]',\n];\n","import { toArray } from './array';\nimport { isAutoFocusAllowedCached, isVisibleCached, notHiddenInput } from './is';\nimport { orderByTabIndex } from './tabOrder';\nimport { getFocusables, getParentAutofocusables } from './tabUtils';\n/**\n * given list of focusable elements keeps the ones user can interact with\n * @param nodes\n * @param visibilityCache\n */\nexport var filterFocusable = function (nodes, visibilityCache) {\n return toArray(nodes)\n .filter(function (node) { return isVisibleCached(visibilityCache, node); })\n .filter(function (node) { return notHiddenInput(node); });\n};\nexport var filterAutoFocusable = function (nodes, cache) {\n if (cache === void 0) { cache = new Map(); }\n return toArray(nodes).filter(function (node) { return isAutoFocusAllowedCached(cache, node); });\n};\n/**\n * !__WARNING__! Low level API.\n * @returns all tabbable nodes\n *\n * @see {@link getFocusableNodes} to get any focusable element\n *\n * @param topNodes - array of top level HTMLElements to search inside\n * @param visibilityCache - an cache to store intermediate measurements. Expected to be a fresh `new Map` on every call\n */\nexport var getTabbableNodes = function (topNodes, visibilityCache, withGuards) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes, withGuards), visibilityCache), true, withGuards);\n};\n/**\n * !__WARNING__! Low level API.\n *\n * @returns anything \"focusable\", not only tabbable. The difference is in `tabIndex=-1`\n * (without guards, as long as they are not expected to be ever focused)\n *\n * @see {@link getTabbableNodes} to get only tabble nodes element\n *\n * @param topNodes - array of top level HTMLElements to search inside\n * @param visibilityCache - an cache to store intermediate measurements. Expected to be a fresh `new Map` on every call\n */\nexport var getFocusableNodes = function (topNodes, visibilityCache) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes), visibilityCache), false);\n};\n/**\n * return list of nodes which are expected to be auto-focused\n * @param topNode\n * @param visibilityCache\n */\nexport var parentAutofocusables = function (topNode, visibilityCache) {\n return filterFocusable(getParentAutofocusables(topNode), visibilityCache);\n};\n/*\n * Determines if element is contained in scope, including nested shadow DOMs\n */\nexport var contains = function (scope, element) {\n if (scope.shadowRoot) {\n return contains(scope.shadowRoot, element);\n }\n else {\n if (Object.getPrototypeOf(scope).contains !== undefined &&\n Object.getPrototypeOf(scope).contains.call(scope, element)) {\n return true;\n }\n return toArray(scope.children).some(function (child) {\n var _a;\n if (child instanceof HTMLIFrameElement) {\n var iframeBody = (_a = child.contentDocument) === null || _a === void 0 ? void 0 : _a.body;\n if (iframeBody) {\n return contains(iframeBody, element);\n }\n return false;\n }\n return contains(child, element);\n });\n }\n};\n","import { FOCUS_DISABLED, FOCUS_GROUP } from '../constants';\nimport { asArray, toArray } from './array';\n/**\n * in case of multiple nodes nested inside each other\n * keeps only top ones\n * this is O(nlogn)\n * @param nodes\n * @returns {*}\n */\nvar filterNested = function (nodes) {\n var contained = new Set();\n var l = nodes.length;\n for (var i = 0; i < l; i += 1) {\n for (var j = i + 1; j < l; j += 1) {\n var position = nodes[i].compareDocumentPosition(nodes[j]);\n /* eslint-disable no-bitwise */\n if ((position & Node.DOCUMENT_POSITION_CONTAINED_BY) > 0) {\n contained.add(j);\n }\n if ((position & Node.DOCUMENT_POSITION_CONTAINS) > 0) {\n contained.add(i);\n }\n /* eslint-enable */\n }\n }\n return nodes.filter(function (_, index) { return !contained.has(index); });\n};\n/**\n * finds top most parent for a node\n * @param node\n * @returns {*}\n */\nvar getTopParent = function (node) {\n return node.parentNode ? getTopParent(node.parentNode) : node;\n};\n/**\n * returns all \"focus containers\" inside a given node\n * @param node - node or nodes to look inside\n * @returns Element[]\n */\nexport var getAllAffectedNodes = function (node) {\n var nodes = asArray(node);\n return nodes.filter(Boolean).reduce(function (acc, currentNode) {\n var group = currentNode.getAttribute(FOCUS_GROUP);\n acc.push.apply(acc, (group\n ? filterNested(toArray(getTopParent(currentNode).querySelectorAll(\"[\".concat(FOCUS_GROUP, \"=\\\"\").concat(group, \"\\\"]:not([\").concat(FOCUS_DISABLED, \"=\\\"disabled\\\"])\"))))\n : [currentNode]));\n return acc;\n }, []);\n};\n","/**\n * returns active element from document or from nested shadowdoms\n */\nimport { safeProbe } from './safe';\n/**\n * returns current active element. If the active element is a \"container\" itself(shadowRoot or iframe) returns active element inside it\n * @param [inDocument]\n */\nexport var getActiveElement = function (inDocument) {\n if (inDocument === void 0) { inDocument = document; }\n if (!inDocument || !inDocument.activeElement) {\n return undefined;\n }\n var activeElement = inDocument.activeElement;\n return (activeElement.shadowRoot\n ? getActiveElement(activeElement.shadowRoot)\n : activeElement instanceof HTMLIFrameElement && safeProbe(function () { return activeElement.contentWindow.document; })\n ? getActiveElement(activeElement.contentWindow.document)\n : activeElement);\n};\n","export var safeProbe = function (cb) {\n try {\n return cb();\n }\n catch (e) {\n return undefined;\n }\n};\n","import { contains } from './utils/DOMutils';\nimport { getAllAffectedNodes } from './utils/all-affected';\nimport { getFirst, toArray } from './utils/array';\nimport { getActiveElement } from './utils/getActiveElement';\nvar focusInFrame = function (frame, activeElement) { return frame === activeElement; };\nvar focusInsideIframe = function (topNode, activeElement) {\n return Boolean(toArray(topNode.querySelectorAll('iframe')).some(function (node) { return focusInFrame(node, activeElement); }));\n};\n/**\n * @returns {Boolean} true, if the current focus is inside given node or nodes.\n * Supports nodes hidden inside shadowDom\n */\nexport var focusInside = function (topNode, activeElement) {\n // const activeElement = document && getActiveElement();\n if (activeElement === void 0) { activeElement = getActiveElement(getFirst(topNode).ownerDocument); }\n if (!activeElement || (activeElement.dataset && activeElement.dataset.focusGuard)) {\n return false;\n }\n return getAllAffectedNodes(topNode).some(function (node) {\n return contains(node, activeElement) || focusInsideIframe(node, activeElement);\n });\n};\n","import { isRadioElement } from './is';\nvar findSelectedRadio = function (node, nodes) {\n return nodes\n .filter(isRadioElement)\n .filter(function (el) { return el.name === node.name; })\n .filter(function (el) { return el.checked; })[0] || node;\n};\nexport var correctNode = function (node, nodes) {\n if (isRadioElement(node) && node.name) {\n return findSelectedRadio(node, nodes);\n }\n return node;\n};\n/**\n * giving a set of radio inputs keeps only selected (tabbable) ones\n * @param nodes\n */\nexport var correctNodes = function (nodes) {\n // IE11 has no Set(array) constructor\n var resultSet = new Set();\n nodes.forEach(function (node) { return resultSet.add(correctNode(node, nodes)); });\n // using filter to support IE11\n return nodes.filter(function (node) { return resultSet.has(node); });\n};\n","import { correctNode } from './correctFocus';\nexport var pickFirstFocus = function (nodes) {\n if (nodes[0] && nodes.length > 1) {\n return correctNode(nodes[0], nodes);\n }\n return nodes[0];\n};\nexport var pickFocusable = function (nodes, index) {\n if (nodes.length > 1) {\n return nodes.indexOf(correctNode(nodes[index], nodes));\n }\n return index;\n};\n","import { correctNodes } from './utils/correctFocus';\nimport { pickFocusable } from './utils/firstFocus';\nimport { isGuard } from './utils/is';\nexport var NEW_FOCUS = 'NEW_FOCUS';\n/**\n * Main solver for the \"find next focus\" question\n * @param innerNodes\n * @param outerNodes\n * @param activeElement\n * @param lastNode\n * @returns {number|string|undefined|*}\n */\nexport var newFocus = function (innerNodes, outerNodes, activeElement, lastNode) {\n var cnt = innerNodes.length;\n var firstFocus = innerNodes[0];\n var lastFocus = innerNodes[cnt - 1];\n var isOnGuard = isGuard(activeElement);\n // focus is inside\n if (activeElement && innerNodes.indexOf(activeElement) >= 0) {\n return undefined;\n }\n var activeIndex = activeElement !== undefined ? outerNodes.indexOf(activeElement) : -1;\n var lastIndex = lastNode ? outerNodes.indexOf(lastNode) : activeIndex;\n var lastNodeInside = lastNode ? innerNodes.indexOf(lastNode) : -1;\n var indexDiff = activeIndex - lastIndex;\n var firstNodeIndex = outerNodes.indexOf(firstFocus);\n var lastNodeIndex = outerNodes.indexOf(lastFocus);\n var correctedNodes = correctNodes(outerNodes);\n var correctedIndex = activeElement !== undefined ? correctedNodes.indexOf(activeElement) : -1;\n var correctedIndexDiff = correctedIndex - (lastNode ? correctedNodes.indexOf(lastNode) : activeIndex);\n var returnFirstNode = pickFocusable(innerNodes, 0);\n var returnLastNode = pickFocusable(innerNodes, cnt - 1);\n // new focus\n if (activeIndex === -1 || lastNodeInside === -1) {\n return NEW_FOCUS;\n }\n // old focus\n if (!indexDiff && lastNodeInside >= 0) {\n return lastNodeInside;\n }\n // first element\n if (activeIndex <= firstNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnLastNode;\n }\n // last element\n if (activeIndex >= lastNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnFirstNode;\n }\n // jump out, but not on the guard\n if (indexDiff && Math.abs(correctedIndexDiff) > 1) {\n return lastNodeInside;\n }\n // focus above lock\n if (activeIndex <= firstNodeIndex) {\n return returnLastNode;\n }\n // focus below lock\n if (activeIndex > lastNodeIndex) {\n return returnFirstNode;\n }\n // index is inside tab order, but outside Lock\n if (indexDiff) {\n if (Math.abs(indexDiff) > 1) {\n return lastNodeInside;\n }\n return (cnt + lastNodeInside + indexDiff) % cnt;\n }\n // do nothing\n return undefined;\n};\n","import { filterAutoFocusable } from './DOMutils';\nimport { pickFirstFocus } from './firstFocus';\nimport { getDataset } from './is';\nvar findAutoFocused = function (autoFocusables) {\n return function (node) {\n var _a;\n var autofocus = (_a = getDataset(node)) === null || _a === void 0 ? void 0 : _a.autofocus;\n return (\n // @ts-expect-error\n node.autofocus ||\n //\n (autofocus !== undefined && autofocus !== 'false') ||\n //\n autoFocusables.indexOf(node) >= 0);\n };\n};\nexport var pickAutofocus = function (nodesIndexes, orderedNodes, groups) {\n var nodes = nodesIndexes.map(function (_a) {\n var node = _a.node;\n return node;\n });\n var autoFocusable = filterAutoFocusable(nodes.filter(findAutoFocused(groups)));\n if (autoFocusable && autoFocusable.length) {\n return pickFirstFocus(autoFocusable);\n }\n return pickFirstFocus(filterAutoFocusable(orderedNodes));\n};\n","import { parentAutofocusables } from './DOMutils';\nimport { contains } from './DOMutils';\nimport { asArray } from './array';\nvar getParents = function (node, parents) {\n if (parents === void 0) { parents = []; }\n parents.push(node);\n if (node.parentNode) {\n getParents(node.parentNode.host || node.parentNode, parents);\n }\n return parents;\n};\n/**\n * finds a parent for both nodeA and nodeB\n * @param nodeA\n * @param nodeB\n * @returns {boolean|*}\n */\nexport var getCommonParent = function (nodeA, nodeB) {\n var parentsA = getParents(nodeA);\n var parentsB = getParents(nodeB);\n // tslint:disable-next-line:prefer-for-of\n for (var i = 0; i < parentsA.length; i += 1) {\n var currentParent = parentsA[i];\n if (parentsB.indexOf(currentParent) >= 0) {\n return currentParent;\n }\n }\n return false;\n};\nexport var getTopCommonParent = function (baseActiveElement, leftEntry, rightEntries) {\n var activeElements = asArray(baseActiveElement);\n var leftEntries = asArray(leftEntry);\n var activeElement = activeElements[0];\n var topCommon = false;\n leftEntries.filter(Boolean).forEach(function (entry) {\n topCommon = getCommonParent(topCommon || entry, entry) || topCommon;\n rightEntries.filter(Boolean).forEach(function (subEntry) {\n var common = getCommonParent(activeElement, subEntry);\n if (common) {\n if (!topCommon || contains(common, topCommon)) {\n topCommon = common;\n }\n else {\n topCommon = getCommonParent(common, topCommon);\n }\n }\n });\n });\n // TODO: add assert here?\n return topCommon;\n};\n/**\n * return list of nodes which are expected to be autofocused inside a given top nodes\n * @param entries\n * @param visibilityCache\n */\nexport var allParentAutofocusables = function (entries, visibilityCache) {\n return entries.reduce(function (acc, node) { return acc.concat(parentAutofocusables(node, visibilityCache)); }, []);\n};\n","import { NEW_FOCUS, newFocus } from './solver';\nimport { getFocusableNodes, getTabbableNodes } from './utils/DOMutils';\nimport { getAllAffectedNodes } from './utils/all-affected';\nimport { asArray, getFirst } from './utils/array';\nimport { pickAutofocus } from './utils/auto-focus';\nimport { getActiveElement } from './utils/getActiveElement';\nimport { isDefined, isNotAGuard } from './utils/is';\nimport { allParentAutofocusables, getTopCommonParent } from './utils/parenting';\nvar reorderNodes = function (srcNodes, dstNodes) {\n var remap = new Map();\n // no Set(dstNodes) for IE11 :(\n dstNodes.forEach(function (entity) { return remap.set(entity.node, entity); });\n // remap to dstNodes\n return srcNodes.map(function (node) { return remap.get(node); }).filter(isDefined);\n};\n/**\n * contains the main logic of the `focus-lock` package.\n *\n * ! you probably dont need this function !\n *\n * given top node(s) and the last active element returns the element to be focused next\n * @returns element which should be focused to move focus inside\n * @param topNode\n * @param lastNode\n */\nexport var focusSolver = function (topNode, lastNode) {\n var activeElement = getActiveElement(asArray(topNode).length > 0 ? document : getFirst(topNode).ownerDocument);\n var entries = getAllAffectedNodes(topNode).filter(isNotAGuard);\n var commonParent = getTopCommonParent(activeElement || topNode, topNode, entries);\n var visibilityCache = new Map();\n var anyFocusable = getFocusableNodes(entries, visibilityCache);\n var innerElements = getTabbableNodes(entries, visibilityCache).filter(function (_a) {\n var node = _a.node;\n return isNotAGuard(node);\n });\n if (!innerElements[0]) {\n innerElements = anyFocusable;\n if (!innerElements[0]) {\n return undefined;\n }\n }\n var outerNodes = getFocusableNodes([commonParent], visibilityCache).map(function (_a) {\n var node = _a.node;\n return node;\n });\n var orderedInnerElements = reorderNodes(outerNodes, innerElements);\n var innerNodes = orderedInnerElements.map(function (_a) {\n var node = _a.node;\n return node;\n });\n var newId = newFocus(innerNodes, outerNodes, activeElement, lastNode);\n if (newId === NEW_FOCUS) {\n var focusNode = pickAutofocus(anyFocusable, innerNodes, allParentAutofocusables(entries, visibilityCache));\n if (focusNode) {\n return { node: focusNode };\n }\n else {\n console.warn('focus-lock: cannot find any node to move focus into');\n return undefined;\n }\n }\n if (newId === undefined) {\n return newId;\n }\n return orderedInnerElements[newId];\n};\n","import { focusOn } from './commands';\nimport { focusSolver } from './focusSolver';\nvar guardCount = 0;\nvar lockDisabled = false;\n/**\n * The main functionality of the focus-lock package\n *\n * Contains focus at a given node.\n * The last focused element will help to determine which element(first or last) should be focused.\n * The found element will be focused.\n *\n * This is one time action (move), not a persistent focus-lock\n *\n * HTML markers (see {@link import('./constants').FOCUS_AUTO} constants) can control autofocus\n * @see {@link focusSolver} for the same functionality without autofocus\n */\nexport var moveFocusInside = function (topNode, lastNode, options) {\n if (options === void 0) { options = {}; }\n var focusable = focusSolver(topNode, lastNode);\n // global local side effect to countain recursive lock activation and resolve focus-fighting\n if (lockDisabled) {\n return;\n }\n if (focusable) {\n /** +FOCUS-FIGHTING prevention **/\n if (guardCount > 2) {\n // we have recursive entered back the lock activation\n console.error('FocusLock: focus-fighting detected. Only one focus management system could be active. ' +\n 'See https://github.com/theKashey/focus-lock/#focus-fighting');\n lockDisabled = true;\n setTimeout(function () {\n lockDisabled = false;\n }, 1);\n return;\n }\n guardCount++;\n focusOn(focusable.node, options.focusOptions);\n guardCount--;\n }\n};\n","export var focusOn = function (target, focusOptions) {\n if ('focus' in target) {\n target.focus(focusOptions);\n }\n if ('contentWindow' in target && target.contentWindow) {\n target.contentWindow.focus();\n }\n};\n","export function deferAction(action) {\n setTimeout(action, 1);\n}\nexport var inlineProp = function inlineProp(name, value) {\n var obj = {};\n obj[name] = value;\n return obj;\n};","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport withSideEffect from 'react-clientside-effect';\nimport { moveFocusInside, focusInside, focusIsHidden, expandFocusableNodes } from 'focus-lock';\nimport { deferAction } from './util';\nimport { mediumFocus, mediumBlur, mediumEffect } from './medium';\n\nvar focusOnBody = function focusOnBody() {\n return document && document.activeElement === document.body;\n};\n\nvar isFreeFocus = function isFreeFocus() {\n return focusOnBody() || focusIsHidden();\n};\n\nvar lastActiveTrap = null;\nvar lastActiveFocus = null;\nvar lastPortaledElement = null;\nvar focusWasOutsideWindow = false;\n\nvar defaultWhitelist = function defaultWhitelist() {\n return true;\n};\n\nvar focusWhitelisted = function focusWhitelisted(activeElement) {\n return (lastActiveTrap.whiteList || defaultWhitelist)(activeElement);\n};\n\nvar recordPortal = function recordPortal(observerNode, portaledElement) {\n lastPortaledElement = {\n observerNode: observerNode,\n portaledElement: portaledElement\n };\n};\n\nvar focusIsPortaledPair = function focusIsPortaledPair(element) {\n return lastPortaledElement && lastPortaledElement.portaledElement === element;\n};\n\nfunction autoGuard(startIndex, end, step, allNodes) {\n var lastGuard = null;\n var i = startIndex;\n\n do {\n var item = allNodes[i];\n\n if (item.guard) {\n if (item.node.dataset.focusAutoGuard) {\n lastGuard = item;\n }\n } else if (item.lockItem) {\n if (i !== startIndex) {\n return;\n }\n\n lastGuard = null;\n } else {\n break;\n }\n } while ((i += step) !== end);\n\n if (lastGuard) {\n lastGuard.node.tabIndex = 0;\n }\n}\n\nvar extractRef = function extractRef(ref) {\n return ref && 'current' in ref ? ref.current : ref;\n};\n\nvar focusWasOutside = function focusWasOutside(crossFrameOption) {\n if (crossFrameOption) {\n return Boolean(focusWasOutsideWindow);\n }\n\n return focusWasOutsideWindow === 'meanwhile';\n};\n\nvar checkInHost = function checkInHost(check, el, boundary) {\n return el && (el.host === check && (!el.activeElement || boundary.contains(el.activeElement)) || el.parentNode && checkInHost(check, el.parentNode, boundary));\n};\n\nvar withinHost = function withinHost(activeElement, workingArea) {\n return workingArea.some(function (area) {\n return checkInHost(activeElement, area, area);\n });\n};\n\nvar activateTrap = function activateTrap() {\n var result = false;\n\n if (lastActiveTrap) {\n var _lastActiveTrap = lastActiveTrap,\n observed = _lastActiveTrap.observed,\n persistentFocus = _lastActiveTrap.persistentFocus,\n autoFocus = _lastActiveTrap.autoFocus,\n shards = _lastActiveTrap.shards,\n crossFrame = _lastActiveTrap.crossFrame,\n focusOptions = _lastActiveTrap.focusOptions;\n var workingNode = observed || lastPortaledElement && lastPortaledElement.portaledElement;\n var activeElement = document && document.activeElement;\n\n if (workingNode) {\n var workingArea = [workingNode].concat(shards.map(extractRef).filter(Boolean));\n\n if (!activeElement || focusWhitelisted(activeElement)) {\n if (persistentFocus || focusWasOutside(crossFrame) || !isFreeFocus() || !lastActiveFocus && autoFocus) {\n if (workingNode && !(focusInside(workingArea) || activeElement && withinHost(activeElement, workingArea) || focusIsPortaledPair(activeElement, workingNode))) {\n if (document && !lastActiveFocus && activeElement && !autoFocus) {\n if (activeElement.blur) {\n activeElement.blur();\n }\n\n document.body.focus();\n } else {\n result = moveFocusInside(workingArea, lastActiveFocus, {\n focusOptions: focusOptions\n });\n lastPortaledElement = {};\n }\n }\n\n focusWasOutsideWindow = false;\n lastActiveFocus = document && document.activeElement;\n }\n }\n\n if (document) {\n var newActiveElement = document && document.activeElement;\n var allNodes = expandFocusableNodes(workingArea);\n var focusedIndex = allNodes.map(function (_ref) {\n var node = _ref.node;\n return node;\n }).indexOf(newActiveElement);\n\n if (focusedIndex > -1) {\n allNodes.filter(function (_ref2) {\n var guard = _ref2.guard,\n node = _ref2.node;\n return guard && node.dataset.focusAutoGuard;\n }).forEach(function (_ref3) {\n var node = _ref3.node;\n return node.removeAttribute('tabIndex');\n });\n autoGuard(focusedIndex, allNodes.length, +1, allNodes);\n autoGuard(focusedIndex, -1, -1, allNodes);\n }\n }\n }\n }\n\n return result;\n};\n\nvar onTrap = function onTrap(event) {\n if (activateTrap() && event) {\n event.stopPropagation();\n event.preventDefault();\n }\n};\n\nvar onBlur = function onBlur() {\n return deferAction(activateTrap);\n};\n\nvar onFocus = function onFocus(event) {\n var source = event.target;\n var currentNode = event.currentTarget;\n\n if (!currentNode.contains(source)) {\n recordPortal(currentNode, source);\n }\n};\n\nvar FocusWatcher = function FocusWatcher() {\n return null;\n};\n\nvar FocusTrap = function FocusTrap(_ref4) {\n var children = _ref4.children;\n return /*#__PURE__*/React.createElement(\"div\", {\n onBlur: onBlur,\n onFocus: onFocus\n }, children);\n};\n\nFocusTrap.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node.isRequired\n} : {};\n\nvar onWindowBlur = function onWindowBlur() {\n focusWasOutsideWindow = 'just';\n deferAction(function () {\n focusWasOutsideWindow = 'meanwhile';\n });\n};\n\nvar attachHandler = function attachHandler() {\n document.addEventListener('focusin', onTrap);\n document.addEventListener('focusout', onBlur);\n window.addEventListener('blur', onWindowBlur);\n};\n\nvar detachHandler = function detachHandler() {\n document.removeEventListener('focusin', onTrap);\n document.removeEventListener('focusout', onBlur);\n window.removeEventListener('blur', onWindowBlur);\n};\n\nfunction reducePropsToState(propsList) {\n return propsList.filter(function (_ref5) {\n var disabled = _ref5.disabled;\n return !disabled;\n });\n}\n\nfunction handleStateChangeOnClient(traps) {\n var trap = traps.slice(-1)[0];\n\n if (trap && !lastActiveTrap) {\n attachHandler();\n }\n\n var lastTrap = lastActiveTrap;\n var sameTrap = lastTrap && trap && trap.id === lastTrap.id;\n lastActiveTrap = trap;\n\n if (lastTrap && !sameTrap) {\n lastTrap.onDeactivation();\n\n if (!traps.filter(function (_ref6) {\n var id = _ref6.id;\n return id === lastTrap.id;\n }).length) {\n lastTrap.returnFocus(!trap);\n }\n }\n\n if (trap) {\n lastActiveFocus = null;\n\n if (!sameTrap || lastTrap.observed !== trap.observed) {\n trap.onActivation();\n }\n\n activateTrap(true);\n deferAction(activateTrap);\n } else {\n detachHandler();\n lastActiveFocus = null;\n }\n}\n\nmediumFocus.assignSyncMedium(onFocus);\nmediumBlur.assignMedium(onBlur);\nmediumEffect.assignMedium(function (cb) {\n return cb({\n moveFocusInside: moveFocusInside,\n focusInside: focusInside\n });\n});\nexport default withSideEffect(reducePropsToState, handleStateChangeOnClient)(FocusWatcher);","import { FOCUS_ALLOW } from './constants';\nimport { contains } from './utils/DOMutils';\nimport { toArray } from './utils/array';\nimport { getActiveElement } from './utils/getActiveElement';\n/**\n * checks if focus is hidden FROM the focus-lock\n * ie contained inside a node focus-lock shall ignore\n *\n * This is a utility function coupled with {@link FOCUS_ALLOW} constant\n *\n * @returns {boolean} focus is currently is in \"allow\" area\n */\nexport var focusIsHidden = function (inDocument) {\n if (inDocument === void 0) { inDocument = document; }\n var activeElement = getActiveElement(inDocument);\n if (!activeElement) {\n return false;\n }\n // this does not support setting FOCUS_ALLOW within shadow dom\n return toArray(inDocument.querySelectorAll(\"[\".concat(FOCUS_ALLOW, \"]\"))).some(function (node) { return contains(node, activeElement); });\n};\n","import { getTabbableNodes } from './utils/DOMutils';\nimport { getAllAffectedNodes } from './utils/all-affected';\nimport { isGuard, isNotAGuard } from './utils/is';\nimport { getTopCommonParent } from './utils/parenting';\n/**\n * @returns list of focusable elements inside a given top node\n * @see {@link getFocusableNodes} for lower level access\n */\nexport var expandFocusableNodes = function (topNode) {\n var entries = getAllAffectedNodes(topNode).filter(isNotAGuard);\n var commonParent = getTopCommonParent(topNode, topNode, entries);\n var visibilityCache = new Map();\n var outerNodes = getTabbableNodes([commonParent], visibilityCache, true);\n var innerElements = getTabbableNodes(entries, visibilityCache)\n .filter(function (_a) {\n var node = _a.node;\n return isNotAGuard(node);\n })\n .map(function (_a) {\n var node = _a.node;\n return node;\n });\n return outerNodes.map(function (_a) {\n var node = _a.node, index = _a.index;\n return ({\n node: node,\n index: index,\n lockItem: innerElements.indexOf(node) >= 0,\n guard: isGuard(node),\n });\n });\n};\n","import _inheritsLoose from '@babel/runtime/helpers/esm/inheritsLoose';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport React, { PureComponent } from 'react';\n\nfunction withSideEffect(reducePropsToState, handleStateChangeOnClient) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof reducePropsToState !== 'function') {\n throw new Error('Expected reducePropsToState to be a function.');\n }\n\n if (typeof handleStateChangeOnClient !== 'function') {\n throw new Error('Expected handleStateChangeOnClient to be a function.');\n }\n }\n\n function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n }\n\n return function wrap(WrappedComponent) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof WrappedComponent !== 'function') {\n throw new Error('Expected WrappedComponent to be a React component.');\n }\n }\n\n var mountedInstances = [];\n var state;\n\n function emitChange() {\n state = reducePropsToState(mountedInstances.map(function (instance) {\n return instance.props;\n }));\n handleStateChangeOnClient(state);\n }\n\n var SideEffect = /*#__PURE__*/function (_PureComponent) {\n _inheritsLoose(SideEffect, _PureComponent);\n\n function SideEffect() {\n return _PureComponent.apply(this, arguments) || this;\n }\n\n // Try to use displayName of wrapped component\n SideEffect.peek = function peek() {\n return state;\n };\n\n var _proto = SideEffect.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n mountedInstances.push(this);\n emitChange();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n emitChange();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n var index = mountedInstances.indexOf(this);\n mountedInstances.splice(index, 1);\n emitChange();\n };\n\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(WrappedComponent, this.props);\n };\n\n return SideEffect;\n }(PureComponent);\n\n _defineProperty(SideEffect, \"displayName\", \"SideEffect(\" + getDisplayName(WrappedComponent) + \")\");\n\n return SideEffect;\n };\n}\n\nexport default withSideEffect;\n","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport FocusLockUI from './Lock';\nimport FocusTrap from './Trap';\nvar FocusLockCombination = /*#__PURE__*/React.forwardRef(function FocusLockUICombination(props, ref) {\n return /*#__PURE__*/React.createElement(FocusLockUI, _extends({\n sideCar: FocusTrap,\n ref: ref\n }, props));\n});\n\nvar _ref = FocusLockUI.propTypes || {},\n sideCar = _ref.sideCar,\n propTypes = _objectWithoutPropertiesLoose(_ref, [\"sideCar\"]);\n\nFocusLockCombination.propTypes = process.env.NODE_ENV !== \"production\" ? propTypes : {};\nexport default FocusLockCombination;","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","export const generateId = (prefix) => {\n const randomNumber = Math.floor(Math.random() * 1000);\n return `${prefix}-${randomNumber}`;\n};\n//# sourceMappingURL=generateId.js.map","import { PureComponent } from 'react';\nimport { createPortal } from 'react-dom';\nimport { generateId } from '../../utils/generateId';\n/**\n * The portal component renders content on the document `body` unless `rootElementRef` is passed.\n */\nexport class Portal extends PureComponent {\n constructor(props) {\n super(props);\n this.id = generateId('portal');\n this.portalNode = null;\n this.state = {\n isMounted: false,\n };\n }\n componentDidMount() {\n const { rootElementRef } = this.props;\n this.portalNode = document.createElement('div');\n this.portalNode.setAttribute('id', `portal-${this.id}`);\n this.portalNode.style.cssText = 'position: absolute; top: 0; left: 0;';\n if (rootElementRef) {\n rootElementRef === null || rootElementRef === void 0 ? void 0 : rootElementRef.appendChild(this.portalNode);\n }\n else {\n document.body.appendChild(this.portalNode);\n }\n this.setState({ isMounted: true });\n }\n componentWillUnmount() {\n if (this.portalNode) {\n const { rootElementRef } = this.props;\n if (rootElementRef) {\n rootElementRef.removeChild(this.portalNode);\n }\n else {\n document.body.removeChild(this.portalNode);\n }\n }\n }\n render() {\n const { children } = this.props;\n const { isMounted } = this.state;\n return this.portalNode && isMounted ? createPortal(children, this.portalNode) : null;\n }\n}\n//# sourceMappingURL=Portal.js.map","import styled from 'styled-components';\nexport const PopoverDialog = styled.dialog.withConfig({ displayName: \"vui--PopoverDialog\", componentId: \"vui--cg48a2\" }) `z-index:${({ zIndex }) => zIndex + 1};padding:0;margin:0;border:none;background:transparent;`;\nexport const Backdrop = styled.div.withConfig({ displayName: \"vui--Backdrop\", componentId: \"vui--49or9l\" }) `position:fixed;top:0;right:0;bottom:0;left:0;z-index:${({ zIndex }) => zIndex};`;\n//# sourceMappingURL=styled.js.map","export const buildClassnames = (names) => names.filter(Boolean).join(' ');\n//# sourceMappingURL=buildClassnames.js.map","/**\n * A function to convert hex color to rgb.\n */\nexport const hexToRgb = (hex) => {\n const shorthandRegex = /^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i;\n const hexTmp = hex.replace(shorthandRegex, (m, r, g, b) => r + r + g + g + b + b);\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hexTmp);\n return result\n ? {\n r: parseInt(result[1], 16),\n g: parseInt(result[2], 16),\n b: parseInt(result[3], 16),\n }\n : null;\n};\n/**\n * A function to get a hex color with opacity, after converting to `rgba`.\n * @param hex color in hex format\n */\nexport const getOpaqueHexColor = (hex, opacity) => {\n const rgb = hexToRgb(hex);\n if (!rgb)\n return hex;\n return `rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, ${opacity})`;\n};\n//# sourceMappingURL=color.js.map","import { __rest } from \"tslib\";\n/* eslint-disable consistent-return */\nimport React, { useState, useEffect, useMemo } from 'react';\nimport { usePopper } from 'react-popper';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport FocusLock from 'react-focus-lock';\nimport { Portal } from '../Portal';\nimport { theme } from '../../theme';\nimport { PopoverDialog, Backdrop } from './styled';\nimport { generateId } from '../../utils';\nimport { useUpdateAriaAnchor } from './hooks/useUpdateAriaAnchor';\nexport const Popover = (_a) => {\n var { id: passedId, children, zIndex = theme.layers.popup, placement = 'bottom', anchorElement, rootElementRef, shards, onShouldClose, style, disableFocusLock } = _a, dialogProps = __rest(_a, [\"id\", \"children\", \"zIndex\", \"placement\", \"anchorElement\", \"rootElementRef\", \"shards\", \"onShouldClose\", \"style\", \"disableFocusLock\"]);\n // Set up PopperJS\n const [popperElement, setPopperElement] = useState(null);\n const { styles, attributes, update } = usePopper(anchorElement, popperElement, { placement });\n // Setup popover id to use passed, or generate its' own.\n const id = useMemo(() => passedId || generateId('popover'), [passedId]);\n // Check and update aria for anchor, only works once this has rendered for the first time though.\n useUpdateAriaAnchor({ anchorElement, popoverId: id });\n /**\n * When content size is changed, force popper update\n */\n useEffect(() => {\n if (!update || !popperElement)\n return;\n const resizeObserver = new ResizeObserver(update);\n resizeObserver.observe(popperElement);\n return () => resizeObserver.disconnect();\n }, [update, popperElement]);\n /**\n * When window is resized, force popper update\n */\n useEffect(() => {\n if (!update)\n return;\n window.addEventListener('resize', update);\n return () => window.removeEventListener('resize', update);\n }, [update]);\n const onDeactivation = () => anchorElement === null || anchorElement === void 0 ? void 0 : anchorElement.focus();\n const onClose = () => {\n onDeactivation();\n onShouldClose === null || onShouldClose === void 0 ? void 0 : onShouldClose();\n };\n const handleEscape = (event) => {\n if (event.key === 'Escape') {\n onClose();\n }\n };\n /**\n * Gets around issue with focusing anchorElement, which is outside trap.\n * Caused scroll to top of page.\n */\n const whileList = (el) => el !== anchorElement;\n return (React.createElement(React.Fragment, null,\n React.createElement(Backdrop, { onClick: onClose, zIndex: zIndex }),\n React.createElement(Portal, { rootElementRef: rootElementRef },\n React.createElement(FocusLock, { shards: shards, onDeactivation: onDeactivation, whiteList: whileList },\n React.createElement(PopoverDialog, Object.assign({ open: true, zIndex: zIndex, ref: setPopperElement, style: Object.assign(Object.assign({}, styles.popper), style), onKeyDown: handleEscape, autoFocus: true }, attributes.popper, dialogProps), children)))));\n};\n//# sourceMappingURL=Popover.js.map","/* eslint-disable no-console */\n/* eslint-disable consistent-return */\nimport { useEffect } from 'react';\n/**\n * Update the anchor element to sent the required attributes if they haven't already set them.\n *\n * This allows current, inaccesible usages to be improved.\n */\nexport const useUpdateAriaAnchor = ({ anchorElement, popoverId }) => {\n useEffect(() => {\n if (!anchorElement)\n return;\n // Try and set aria-expanded on the anchor.\n try {\n anchorElement.setAttribute('aria-expanded', 'true');\n }\n catch (_) {\n console.warn(`Unable to update aria-expanded for popover anchor to: ${true}`);\n }\n // Try and set aria controls, unless it already exists.\n try {\n if (!anchorElement.hasAttribute('aria-controls')) {\n anchorElement.setAttribute('aria-controls', popoverId);\n }\n }\n catch (_) {\n console.warn(`Unable to set aria-controls for popover id: ${popoverId}`);\n }\n // Try and set aria-haspopup, unless it already exists.\n try {\n if (!anchorElement.hasAttribute('aria-haspopup')) {\n anchorElement.setAttribute('aria-haspopup', 'dialog');\n }\n }\n catch (_) {\n console.warn(`Unable to set aria-haspopup for popover id: ${popoverId}`);\n }\n // On unmount set aria-expanded to false\n return () => {\n try {\n anchorElement.setAttribute('aria-expanded', 'false');\n }\n catch (_) {\n console.warn(`Unable to update aria-expanded for popover anchor to: ${false}`);\n }\n };\n }, [anchorElement, popoverId]);\n};\n//# sourceMappingURL=useUpdateAriaAnchor.js.map","import React from 'react';\nexport const TailSpin = ({ width, height, className, color, label }) => (React.createElement(\"svg\", { width: width, height: height, className: className, viewBox: \"0 0 38 38\", xmlns: \"http://www.w3.org/2000/svg\", \"aria-label\": label },\n React.createElement(\"defs\", null,\n React.createElement(\"linearGradient\", { x1: \"8.042%\", y1: \"0%\", x2: \"65.682%\", y2: \"23.865%\", id: \"a\" },\n React.createElement(\"stop\", { stopColor: color, stopOpacity: \"0\", offset: \"0%\" }),\n React.createElement(\"stop\", { stopColor: color, stopOpacity: \".631\", offset: \"63.146%\" }),\n React.createElement(\"stop\", { stopColor: color, offset: \"100%\" }))),\n React.createElement(\"g\", { fill: \"none\", fillRule: \"evenodd\" },\n React.createElement(\"g\", { transform: \"translate(1 1)\" },\n React.createElement(\"path\", { d: \"M36 18c0-9.94-8.06-18-18-18\", id: \"Oval-2\", stroke: color, strokeWidth: \"2\" },\n React.createElement(\"animateTransform\", { attributeName: \"transform\", type: \"rotate\", from: \"0 18 18\", to: \"360 18 18\", dur: \"0.9s\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { fill: \"#fff\", cx: \"36\", cy: \"18\", r: \"1\" },\n React.createElement(\"animateTransform\", { attributeName: \"transform\", type: \"rotate\", from: \"0 18 18\", to: \"360 18 18\", dur: \"0.9s\", repeatCount: \"indefinite\" }))))));\n//# sourceMappingURL=TailSpin.js.map","import React from 'react';\nexport const Grid = ({ width, height, className, color, label }) => (React.createElement(\"svg\", { width: width, height: height, className: className, viewBox: \"0 0 105 105\", fill: color, \"aria-label\": label },\n React.createElement(\"circle\", { cx: \"12.5\", cy: \"12.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"0s\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"12.5\", cy: \"52.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"100ms\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"52.5\", cy: \"12.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"300ms\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"52.5\", cy: \"52.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"600ms\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"92.5\", cy: \"12.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"800ms\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"92.5\", cy: \"52.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"400ms\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"12.5\", cy: \"92.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"700ms\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"52.5\", cy: \"92.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"500ms\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"92.5\", cy: \"92.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"200ms\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" }))));\n//# sourceMappingURL=Grid.js.map","import React from 'react';\nexport const ThreeDots = ({ width, height, className, color, label }) => (React.createElement(\"svg\", { width: width, height: height, className: className, viewBox: \"0 0 120 30\", xmlns: \"http://www.w3.org/2000/svg\", fill: color, \"aria-label\": label },\n React.createElement(\"circle\", { cx: \"15\", cy: \"15\", r: \"15\" },\n React.createElement(\"animate\", { attributeName: \"r\", from: \"15\", to: \"15\", begin: \"0s\", dur: \"0.8s\", values: \"15;9;15\", calcMode: \"linear\", repeatCount: \"indefinite\" }),\n React.createElement(\"animate\", { attributeName: \"fillOpacity\", from: \"1\", to: \"1\", begin: \"0s\", dur: \"0.8s\", values: \"1;.5;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"60\", cy: \"15\", r: \"9\", attributeName: \"fillOpacity\", from: \"1\", to: \"0.3\" },\n React.createElement(\"animate\", { attributeName: \"r\", from: \"9\", to: \"9\", begin: \"0s\", dur: \"0.8s\", values: \"9;15;9\", calcMode: \"linear\", repeatCount: \"indefinite\" }),\n React.createElement(\"animate\", { attributeName: \"fillOpacity\", from: \"0.5\", to: \"0.5\", begin: \"0s\", dur: \"0.8s\", values: \".5;1;.5\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"105\", cy: \"15\", r: \"15\" },\n React.createElement(\"animate\", { attributeName: \"r\", from: \"15\", to: \"15\", begin: \"0s\", dur: \"0.8s\", values: \"15;9;15\", calcMode: \"linear\", repeatCount: \"indefinite\" }),\n React.createElement(\"animate\", { attributeName: \"fillOpacity\", from: \"1\", to: \"1\", begin: \"0s\", dur: \"0.8s\", values: \"1;.5;1\", calcMode: \"linear\", repeatCount: \"indefinite\" }))));\n//# sourceMappingURL=ThreeDots.js.map","import React from 'react';\nimport { TailSpin } from './TailSpin';\nimport { Grid } from './Grid';\nimport { ThreeDots } from './ThreeDots';\nexport const Loader = ({ className, height = 24, width = 24, color = '#588CB0', type = 'TailSpin', }) => {\n switch (type) {\n case 'Grid': {\n return React.createElement(Grid, { className: className, height: height, width: width, color: color });\n }\n case 'ThreeDots': {\n return React.createElement(ThreeDots, { className: className, height: height, width: width, color: color });\n }\n case 'TailSpin':\n default: {\n return React.createElement(TailSpin, { className: className, height: height, width: width, color: color });\n }\n }\n};\n//# sourceMappingURL=Loader.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nimport { sizes } from '../../../theme/modules/sizes';\nexport const MainContent = styled.span.withConfig({ displayName: \"vui--MainContent\", componentId: \"vui--3juln2\" }) `display:inline-flex;align-items:center;gap:${({ hasText }) => (hasText ? '8px' : '4px')};${({ loading }) => loading && 'opacity: 0;'};svg{width:${({ size }) => sizes[size]};height:${({ size }) => sizes[size]};}`;\nconst BaseButton = styled.button.withConfig({ displayName: \"vui--BaseButton\", componentId: \"vui--1xsghtl\" }) `position:relative;box-sizing:border-box;appearance:none;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:${theme.fontFamily};font-weight:400;border:1px solid;background-color:transparent;white-space:nowrap;${(props) => {\n let height = '40px';\n let paddingLeft = '24px';\n let paddingRight = '24px';\n let borderRadius = '8px';\n let fontSize = '16px';\n let outlineWidth = '4px';\n if (props.hasIcon) {\n paddingLeft = '16px';\n }\n if (props.hasDropdown) {\n paddingRight = '16px';\n }\n if (props.size === 'sm') {\n height = '32px';\n paddingLeft = '16px';\n paddingRight = '16px';\n borderRadius = '4px';\n fontSize = '14px';\n outlineWidth = '2px';\n if (props.hasIcon) {\n paddingLeft = '8px';\n }\n if (props.hasDropdown) {\n paddingRight = '8px';\n }\n }\n if (!props.hasText) {\n paddingLeft = '8px';\n paddingRight = '8px';\n }\n return `\n --outline-width: ${outlineWidth};\n\n height: ${height};\n padding-left: ${paddingLeft};\n padding-right: ${paddingRight};\n border-radius: ${borderRadius};\n font-size: ${fontSize};\n `;\n}} &:hover{cursor:pointer;}&:disabled{pointer-events:none;cursor:unset !important;}& > span{position:relative;top:-1px;}`;\nexport const DefaultButton = styled(BaseButton).withConfig({ displayName: \"vui--DefaultButton\", componentId: \"vui--1mceh7z\" }) `border-color:${theme.colors.neutral.grey.dark};background-color:white;box-shadow:0 1px 3px rgba(55, 66, 77, 0.15);color:${({ hasText }) => hasText ? theme.colors.neutral.ink.base : theme.colors.secondary.blue.base};&:hover{background-color:${theme.colors.neutral.grey.lightest};}&:active{background-color:${theme.colors.neutral.grey.lightest};border-color:${theme.colors.secondary.blue.base};box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.blue.light};}&:focus-visible{box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.blue.light};outline:0;}&:disabled{box-shadow:none !important;background-color:${theme.colors.neutral.grey.base} !important;border-color:${theme.colors.neutral.grey.base} !important;color:${theme.colors.neutral.ink.light} !important;}`;\nexport const DefaultDestructiveButton = styled(DefaultButton).withConfig({ displayName: \"vui--DefaultDestructiveButton\", componentId: \"vui--1vhc5dm\" }) `color:${theme.colors.secondary.red.base};&:hover{color:${theme.colors.secondary.red.dark};}&:active{border-color:${theme.colors.secondary.red.base};box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.red.light};color:${theme.colors.secondary.red.dark};}&:focus-visible{box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.red.light};}`;\nexport const PrimaryButton = styled(DefaultButton).withConfig({ displayName: \"vui--PrimaryButton\", componentId: \"vui--lamrqo\" }) `background-color:${theme.colors.secondary.blue.base};border-color:${theme.colors.secondary.blue.base};color:white;&:hover{background-color:${theme.colors.secondary.blue.dark};border-color:${theme.colors.secondary.blue.dark};}&:active{background-color:${theme.colors.secondary.blue.dark};border-color:${theme.colors.secondary.blue.dark};box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.blue.light};}&:focus-visible{box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.blue.light};}`;\nexport const PrimaryDestructiveButton = styled(PrimaryButton).withConfig({ displayName: \"vui--PrimaryDestructiveButton\", componentId: \"vui--14zrdl\" }) `background-color:${theme.colors.secondary.red.base};border-color:${theme.colors.secondary.red.base};color:white;&:hover{background-color:${theme.colors.secondary.red.dark};border-color:${theme.colors.secondary.red.dark};}&:active{background-color:${theme.colors.secondary.red.dark};border-color:${theme.colors.secondary.red.dark};box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.red.light};}&:focus-visible{box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.red.light};}`;\nexport const FlatButton = styled(BaseButton).withConfig({ displayName: \"vui--FlatButton\", componentId: \"vui--1w880uc\" }) `border-color:transparent;box-shadow:none;color:${theme.colors.neutral.ink.base};&:hover{background-color:rgba(0, 0, 0, 0.1);}&:active{background-color:rgba(0, 0, 0, 0.1);}&:focus-visible{box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.blue.light};outline:0;}&:disabled{background-color:transparent;border-color:transparent;}`;\nexport const UnstyledButton = styled.button.withConfig({ displayName: \"vui--UnstyledButton\", componentId: \"vui--kyccjz\" }) `appearance:none;border:0;background-color:transparent;padding:0;font:inherit;&:hover{cursor:pointer;}`;\nexport const LinkButton = styled(UnstyledButton).withConfig({ displayName: \"vui--LinkButton\", componentId: \"vui--eh2yja\" }) `display:inline-flex;flex-direction:row;align-items:center;font-family:${theme.text.link.fontFamily};font-size:${theme.text.link.fontSize};font-weight:${theme.text.link.fontWeight};line-height:${theme.text.link.lineHeight};text-decoration:${theme.text.link.textDecoration};color:${theme.colors.secondary.blue.base};&:hover{color:${theme.colors.secondary.blue.dark};}& > * + *{margin-left:${theme.sizes.xs};}& > span{position:relative;top:-1px;}`;\nexport const LoadingWrapper = styled.div.withConfig({ displayName: \"vui--LoadingWrapper\", componentId: \"vui--cvu4hf\" }) `position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;margin-left:0;`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nexport const DropdownIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M4 6L8 10L12 6H4Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=DropdownIcon.js.map","import { __rest } from \"tslib\";\nimport React, { forwardRef } from 'react';\nimport { Loader } from '../Loader';\nimport { DefaultButton, DefaultDestructiveButton, PrimaryButton, PrimaryDestructiveButton, FlatButton, LinkButton, UnstyledButton, LoadingWrapper, MainContent, } from './components/styled';\nimport { DropdownIcon } from '../../tempIcons/DropdownIcon';\nconst variantMap = {\n default: DefaultButton,\n primary: PrimaryButton,\n destructive: DefaultDestructiveButton,\n primaryDestructive: PrimaryDestructiveButton,\n flat: FlatButton,\n link: LinkButton,\n unstyled: UnstyledButton,\n};\nexport const Button = forwardRef((_a, ref) => {\n var { className, children, icon, variant = 'default', size = 'base', dropdown = false, loading = false } = _a, otherProps = __rest(_a, [\"className\", \"children\", \"icon\", \"variant\", \"size\", \"dropdown\", \"loading\"]);\n if (variant === 'unstyled') {\n return (React.createElement(UnstyledButton, Object.assign({ ref: ref, className: className }, otherProps), children));\n }\n const VariantButton = variantMap[variant];\n const hasChildren = children !== undefined;\n const hasIcon = !!icon;\n return (React.createElement(VariantButton, Object.assign({ ref: ref, className: className, size: size, hasText: hasChildren, hasIcon: hasIcon, hasDropdown: dropdown }, otherProps),\n (hasChildren || hasIcon) && (React.createElement(MainContent, { loading: loading, hasText: !!children, size: children || size === 'sm' ? 'base' : 'md' },\n icon && icon,\n children !== undefined && React.createElement(\"span\", null, children),\n dropdown && React.createElement(DropdownIcon, null))),\n loading && (React.createElement(LoadingWrapper, null,\n React.createElement(Loader, null)))));\n});\n//# sourceMappingURL=Button.js.map","import styled from 'styled-components';\nimport { sizes } from '../../theme/modules/sizes';\nexport const Header = styled.header.withConfig({ displayName: \"vui--Header\", componentId: \"vui--13im4do\" }) `padding-top:${sizes.md};padding-right:${sizes.md};padding-left:${sizes.md};margin-bottom:${sizes.md};& > * + *{margin-top:${sizes.xs};}`;\nexport const HeaderGrid = styled.div.withConfig({ displayName: \"vui--HeaderGrid\", componentId: \"vui--1orvtgl\" }) `/*${sizes.base}*/display:flex;justify-content:flex-end;align-items:center;& > *:first-child{flex:1;}`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nimport { sizes } from '../theme/modules/sizes';\nexport const DownArrowIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", role: \"presentation\", height: sizes.md }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M11.0302 5.52997L7.97021 8.5833L4.91021 5.52997L3.97021 6.46997L7.97021 10.47L11.9702 6.46997L11.0302 5.52997Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=DownArrowIcon.js.map","import React from 'react';\nexport const CrossIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", role: \"presentation\", height: 24, width: 24 }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M19 6.51071L17.4893 5L11.5 10.9893L5.51071 5L4 6.51071L9.98929 12.5L4 18.4893L5.51071 20L11.5 14.0107L17.4893 20L19 18.4893L13.0107 12.5L19 6.51071Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=CrossIcon.js.map","import React from 'react';\nimport { Text } from '../Text';\nimport { Button } from '../Button';\nimport { Header, HeaderGrid } from './styled';\nimport { DownArrowIcon } from '../../tempIcons/DownArrowIcon';\nimport { UpArrowIcon } from '../../tempIcons/UpArrowIcon';\nimport { CrossIcon } from '../../tempIcons/CrossIcon';\nexport const CardHeader = ({ id, title, subtitle, headerVariant = 'headingSmall', action, ActionSlot, isCollapsed, onClickCollapse, onClickClose, }) => (React.createElement(Header, null,\n React.createElement(HeaderGrid, null,\n React.createElement(Text, { id: id, variant: headerVariant }, title),\n action && (React.createElement(Button, { variant: \"link\", onClick: action.onClick }, action.title)),\n ActionSlot,\n onClickCollapse && (React.createElement(Button, { variant: \"flat\", icon: isCollapsed ? React.createElement(DownArrowIcon, null) : React.createElement(UpArrowIcon, null), onClick: onClickCollapse })),\n onClickClose && (React.createElement(Button, { variant: \"flat\", icon: React.createElement(CrossIcon, null), onClick: onClickClose, \"aria-label\": \"Close\" }))),\n subtitle && React.createElement(Text, { variant: \"subheadingSmall\" }, subtitle)));\n//# sourceMappingURL=CardHeader.js.map","import styled from 'styled-components';\nimport { motion } from 'framer-motion';\nimport { Shadows } from '../../theme/modules/shadows';\nimport { colors } from '../../theme/modules/colors';\nimport { sizes } from '../../theme/modules/sizes';\nimport { radius } from '../../theme/modules/radius';\nimport { text } from '../../theme/modules/text';\nconst { grey } = colors.neutral;\nconst elevationShadowMap = {\n 0: 'none',\n 1: Shadows.sm,\n 2: Shadows.base,\n 3: Shadows.md,\n 4: Shadows.lg,\n};\nconst accents = {\n info: colors.secondary.blue.base,\n success: colors.secondary.green.base,\n error: colors.secondary.red.base,\n};\nexport const Footer = styled.footer.withConfig({ displayName: \"vui--Footer\", componentId: \"vui--1s3932u\" }) `margin-top:${sizes.base};padding:${sizes.md};z-index:2;`;\nexport const Section = styled.section.withConfig({ displayName: \"vui--Section\", componentId: \"vui--n2tmr2\" }) `padding-right:${sizes.md};padding-left:${sizes.md};margin-top:${sizes.md};margin-bottom:${sizes.md};font-family:${text.body.fontFamily};font-size:${text.body.fontSize};font-weight:${text.body.fontWeight};line-height:${text.body.lineHeight};color:${text.body.color};& + &{border-top:${sizes.line} solid ${grey.base};padding-top:${sizes.md};}`;\nexport const FullBleed = styled.div.withConfig({ displayName: \"vui--FullBleed\", componentId: \"vui--8unl0i\" }) `margin-left:-${sizes.md};margin-right:-${sizes.md};`;\nexport const Body = styled(motion.div).withConfig({ displayName: \"vui--Body\", componentId: \"vui--1q1caki\" }) `overflow-y:hidden;&:not(:first-child)> ${Section}:first-child{margin-top:0;}`;\nexport const Surface = styled.div.withConfig({ displayName: \"vui--Surface\", componentId: \"vui--5cnkiv\" }) `position:relative;width:100%;background-color:white;border:${sizes.line} solid ${grey.base};box-shadow:${(props) => props.elevation !== undefined ? elevationShadowMap[props.elevation] : Shadows.sm};border-radius:${radius.md};overflow:hidden;box-sizing:border-box;${({ accent }) => accent &&\n `\n &::after {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n height: ${sizes.xs};\n background-color: ${accents[accent]};\n }\n `}`;\n//# sourceMappingURL=styled.js.map","import React, { useState } from 'react';\nimport { CardHeader } from '../CardHeader';\nimport { Surface, Body, FullBleed, Footer, Section } from './styled';\nconst collapseAnimationVariants = {\n expanded: { height: 'auto' },\n collapsed: { height: 0 },\n};\nexport const Card = ({ className, style, title, subtitle, HeaderActionSlot, action, collapsable, elevation, accent, children, onClose, renderFooter, }) => {\n const [isCollapsed, setIsCollapsed] = useState(false);\n const toggleCollapsed = () => {\n setIsCollapsed(!isCollapsed);\n };\n const headerMarkup = title && (React.createElement(CardHeader, { title: title, subtitle: subtitle, ActionSlot: HeaderActionSlot, action: action, onClickClose: onClose, isCollapsed: isCollapsed, onClickCollapse: collapsable ? toggleCollapsed : undefined }));\n const showBody = (collapsable && !isCollapsed) || !collapsable;\n const bodyMarkup = (React.createElement(Body, { animate: showBody ? 'expanded' : 'collapsed', variants: collapseAnimationVariants, transition: { duration: 0.3, ease: 'easeOut' } },\n React.createElement(Section, null, children)));\n const footerMarkup = renderFooter !== undefined && React.createElement(Footer, null, renderFooter());\n return (React.createElement(Surface, { className: className, style: style, elevation: elevation, accent: accent },\n headerMarkup,\n bodyMarkup,\n footerMarkup));\n};\nCard.Surface = Surface;\nCard.Section = Section;\nCard.FullBleed = FullBleed;\nCard.Footer = Footer;\n//# sourceMappingURL=Card.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nimport { Button } from '../Button';\nimport { Card } from '../Card';\nimport { Text } from '../Text';\nconst { sizes, colors, text } = theme;\nexport const ListCard = styled(Card.Surface).withConfig({ displayName: \"vui--ListCard\", componentId: \"vui--1trkfaa\" }) `min-width:280px;padding:${sizes.base} 0;display:flex;flex-direction:column;`;\nexport const Section = styled.section.withConfig({ displayName: \"vui--Section\", componentId: \"vui--rjtb0l\" }) `display:flex;flex-direction:column;& + &{border-top:1px solid ${colors.neutral.grey.base};margin-top:${sizes.base};padding-top:${sizes.base};}`;\nexport const SectionHeading = styled(Text).attrs({ variant: 'subheadingSmall' }).withConfig({ displayName: \"vui--SectionHeading\", componentId: \"vui--74egpv\" }) `margin:${sizes.sm} ${sizes.base} ${sizes.sm};`;\nexport const Item = styled(Button).attrs({ variant: 'unstyled' }).withConfig({ displayName: \"vui--Item\", componentId: \"vui--1ib3pw5\" }) `box-sizing:border-box;min-height:${sizes.lg};padding:${sizes.xs} ${sizes.base};display:flex;align-items:center;white-space:nowrap;font-family:${text.body.fontFamily};font-size:${text.body.fontSize};font-weight:${text.body.fontWeight};&:hover{background-color:${colors.neutral.grey.light};color:${colors.secondary.blue.base};}& > * + *{margin-left:${sizes[3]};}`;\nexport const ActionItem = styled(Item).withConfig({ displayName: \"vui--ActionItem\", componentId: \"vui--1p9b0cj\" }) `color:${colors.secondary.blue.base};`;\nexport const LinkItem = styled(Item).withConfig({ displayName: \"vui--LinkItem\", componentId: \"vui--dzqkwg\" }) `color:${colors.secondary.blue.base};text-decoration:underline;`;\n//# sourceMappingURL=styled.js.map","import React, { useState } from 'react';\nimport { Popover } from '../Popover';\nimport { Button } from '../Button';\nimport { Section, SectionHeading, ListCard, Item, ActionItem, LinkItem } from './styled';\nconst itemMap = {\n item: Item,\n action: ActionItem,\n link: LinkItem,\n};\nexport const ActionList = ({ title, items = [], sections, buttonVariant, buttonSize, }) => {\n const [isActive, setIsActive] = useState(false);\n const [anchorEl, setAnchorEl] = useState(null);\n const handleClick = (callback) => {\n setIsActive(false);\n callback();\n };\n const renderItem = (item) => {\n const ItemComponent = itemMap[item.variant || 'item'];\n return (React.createElement(ItemComponent, { onClick: () => handleClick(item.onClick), key: item.title },\n item.icon && item.icon,\n React.createElement(\"span\", null, item.title)));\n };\n const renderSection = (section) => (React.createElement(Section, { key: section.title },\n section.title && React.createElement(SectionHeading, null, section.title),\n section.items.map(renderItem)));\n const listItemMarkup = sections ? sections.map(renderSection) : items.map(renderItem);\n return (React.createElement(React.Fragment, null,\n React.createElement(Button, { dropdown: true, variant: buttonVariant, size: buttonSize, onClick: () => setIsActive(!isActive), ref: setAnchorEl }, title),\n isActive && (React.createElement(Popover, { anchorElement: anchorEl, placement: \"bottom-start\", onShouldClose: () => setIsActive(false) },\n React.createElement(ListCard, null, listItemMarkup)))));\n};\n//# sourceMappingURL=ActionList.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nexport const CommonAnchor = styled.a.withConfig({ displayName: \"vui--CommonAnchor\", componentId: \"vui--1tq5iq\" }) `box-sizing:border-box;display:inline-flex;margin:0;padding:0;font-family:${theme.text.link.fontFamily};font-style:${theme.text.link.fontStyle};font-weight:${theme.text.link.fontWeight};font-size:${theme.text.link.fontSize};line-height:${theme.text.link.lineHeight};color:${theme.colors.secondary.blue.base};text-decoration:${theme.text.link.textDecoration};&:hover{color:${theme.colors.secondary.blue.dark};}`;\n//# sourceMappingURL=styled.js.map","import styled from 'styled-components';\nimport { BaseContainer } from '../../BaseContainer/BaseContainer';\nexport const Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--901a1g\" }) `display:inline-flex;background-color:#ffffff;box-shadow:1px 4px 15px rgba(27, 33, 38, 0.25);border-radius:4px;overflow:hidden;`;\n//# sourceMappingURL=styled.js.map","import React, { forwardRef } from 'react';\nimport { Container } from './styled';\nexport const BasicDropdown = forwardRef((props, ref) => {\n const { children, className } = props;\n return (React.createElement(Container, { className: className, ref: ref }, children));\n});\n//# sourceMappingURL=BasicDropdown.js.map","import styled from 'styled-components';\nimport { BasicDropdown } from './components/BasicDropdown';\nimport { BaseContainer as BasicContainer } from '../BaseContainer/BaseContainer';\nconst Container = styled(BasicContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--602vf7\" }) `display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;`;\nconst Wrap = styled(BasicContainer).withConfig({ displayName: \"vui--Wrap\", componentId: \"vui--npjssh\" }) `display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;min-width:100%;`;\nconst Dropdown = styled(BasicDropdown).withConfig({ displayName: \"vui--Dropdown\", componentId: \"vui--dv3wrs\" }) `flex-direction:column;position:absolute;z-index:3;${(props) => (props.reversed ? 'bottom: 8px;' : 'top: 6px;')} &.dropdown-enter{opacity:0;transform:translateY(-6px);}&.dropdown-enter-active{opacity:1;transition:all 200ms;transform:translateY(0px);}&.dropdown-exit{opacity:1;transform:translateY(0px);}&.dropdown-exit-active{opacity:0;transition:all 200ms;transform:translateY(-6px);}`;\nexport { Wrap, Dropdown, Container };\n//# sourceMappingURL=styled.js.map","import React, { useRef } from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport { Wrap, Dropdown, Container } from './styled';\nimport { useClickAway } from './hooks/useClickAway';\nexport const AnimatedDropdown = ({ cta, shouldShowDropdown, children, className = 'animated-dropdown', reversed = false, onClickAway = () => { }, timeout = 350, transitionClassnames = 'dropdown', onClick, onMouseEnter, onMouseLeave, }) => {\n const dropdownRef = useRef(null);\n useClickAway(dropdownRef, (event) => {\n if (shouldShowDropdown) {\n onClickAway(event);\n }\n });\n return (React.createElement(Container, { className: `${className}-container ${className}`, onClick: onClick, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, ref: dropdownRef },\n !reversed && cta,\n React.createElement(Wrap, { className: `${className}-wrap ${className}` },\n React.createElement(CSSTransition, { in: shouldShowDropdown, timeout: timeout, classNames: transitionClassnames, unmountOnExit: true },\n React.createElement(Dropdown, { reversed: reversed, className: `${className}-basic-dropdown ${className}` }, children))),\n reversed && cta));\n};\n//# sourceMappingURL=AnimatedDropdown.js.map","import { useEffect } from 'react';\nexport const useClickAway = (ref, onClickAway) => {\n useEffect(() => {\n const handleClickAway = (event) => {\n if (ref.current && !ref.current.contains(event.target)) {\n onClickAway(event);\n }\n };\n document.addEventListener('mousedown', handleClickAway);\n return () => {\n document.removeEventListener('mousedown', handleClickAway);\n };\n }, [ref, onClickAway]);\n};\n//# sourceMappingURL=useClickAway.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nexport const AvatarSC = styled.div.withConfig({ displayName: \"vui--AvatarSC\", componentId: \"vui--224xhi\" }) `width:${(props) => props.width};height:${(props) => props.width};border:3px solid ${theme.colors.neutral.grey.base};color:${(props) => props.textColor};background-color:${(props) => props.bgColor};cursor:pointer;border-radius:50%;display:flex;justify-content:center;align-items:center;background-size:cover;span{font-family:${theme.text.bodySmallBold.fontFamily};font-weight:${theme.text.bodySmallBold.fontWeight};font-size:${theme.text.bodySmallBold.fontSize};line-height:${theme.text.bodySmallBold.lineHeight};}`;\n//# sourceMappingURL=styled.js.map","export var Position;\n(function (Position) {\n Position[\"end\"] = \"end\";\n Position[\"start\"] = \"start\";\n})(Position || (Position = {}));\nexport var Sides;\n(function (Sides) {\n Sides[\"BOTTOM\"] = \"bottom\";\n Sides[\"TOP\"] = \"top\";\n})(Sides || (Sides = {}));\n//# sourceMappingURL=types.js.map","import styled from 'styled-components';\nimport { Text } from '../Text';\nimport { theme } from '../../theme';\nconst Container = styled.div.withConfig({ displayName: \"vui--Container\", componentId: \"vui--16xd2og\" }) `display:inline-block;`;\nconst Hoverable = styled(Container).withConfig({ displayName: \"vui--Hoverable\", componentId: \"vui--if1bgt\" }) ``;\nconst TooltipText = styled(Text).withConfig({ displayName: \"vui--TooltipText\", componentId: \"vui--1tbdgc0\" }) `color:${theme.colors.neutral.grey.lightest};white-space:pre-line;overflow-wrap:break-word;display:inline;`;\nconst Triangle = styled.div.withConfig({ displayName: \"vui--Triangle\", componentId: \"vui--1eqvhdd\" }) `background-color:#333;height:16px;width:16px;position:absolute;transform:rotate(45deg);z-index:12;`;\nconst Tip = styled.div.withConfig({ displayName: \"vui--Tip\", componentId: \"vui--10g4qtf\" }) `transition:${({ duration }) => `opacity ${duration}ms`};&.tip-enter{opacity:0;}&.tip-enter-active{opacity:1;}&[data-popper-placement^='top-start'] > #veeqo-components-triangle{left:8px;bottom:0px;}&[data-popper-placement^='top-end'] > #veeqo-components-triangle{right:8px;bottom:0px;}&[data-popper-placement^='bottom-start'] > #veeqo-components-triangle{left:8px;top:-4px;}&[data-popper-placement^='bottom-end'] > #veeqo-components-triangle{right:8px;top:-4px;}`;\nconst Wrap = styled(Container).withConfig({ displayName: \"vui--Wrap\", componentId: \"vui--1arl0em\" }) `font-size:14px;overflow:hidden;padding:16px 20px;border-radius:4px;box-shadow:0 6px 1em -0.5em rgba(0, 0, 0, 0.35);background:#333;color:#fff;z-index:10;min-width:${({ tipMinWidth }) => tipMinWidth}px;max-width:${({ tipMaxWidth }) => tipMaxWidth}px;`;\nexport { Container, TooltipText, Tip, Hoverable, Wrap, Triangle };\n//# sourceMappingURL=styled.js.map","import React, { useState, useCallback } from 'react';\nimport { usePopper } from 'react-popper';\nimport ReactDOM from 'react-dom';\nimport { theme } from '../../theme';\nimport { Sides } from './types';\nimport { Container, TooltipText, Tip, Hoverable, Wrap, Triangle } from './styled';\nconst defaultConfig = {\n duration: 400,\n side: Sides.TOP,\n triangleOffset: 8,\n tipMinWidth: 60,\n tipMaxWidth: 340,\n};\nexport const Tooltip = ({ children, text, content, config, reversed = false, className, withTriangle, initialShouldShow = false, useReactPortal = true, }) => {\n const hasText = text ? text.trim().length > 0 : false;\n const usedConfig = Object.assign(Object.assign({}, defaultConfig), config);\n const { duration, side, triangleOffset, tipMinWidth, tipMaxWidth } = usedConfig;\n const classNames = {\n container: className && `${className} ${className}-container`,\n tip: className && `${className}-tip`,\n wrap: className && `${className}-wrap`,\n triangle: className && `${className}-triangle`,\n hoverable: className && `${className}-hoverable`,\n };\n const [shouldShow, setShouldShow] = useState(initialShouldShow);\n const [hoverableElement, setHoverableElement] = useState(null);\n const [popperElement, setPopperElement] = useState(null);\n const { styles, attributes } = usePopper(hoverableElement, popperElement, {\n placement: `${side}-${reversed ? 'end' : 'start'}`,\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [0, 10],\n },\n },\n ],\n });\n const show = useCallback(() => setShouldShow(true), [setShouldShow]);\n const hide = useCallback(() => setShouldShow(false), [setShouldShow]);\n const tooltipStyles = Object.assign(Object.assign({}, styles.popper), { zIndex: theme.layers.tooltip });\n const tooltipMarkup = shouldShow && (content || hasText) && (React.createElement(Tip, Object.assign({ className: classNames.tip, ref: setPopperElement, duration: duration, triangleOffsetSize: triangleOffset, style: tooltipStyles }, attributes.popper, { role: \"tooltip\" }),\n React.createElement(Wrap, { className: classNames.wrap, tipMinWidth: tipMinWidth, tipMaxWidth: tipMaxWidth }, content !== null && content !== void 0 ? content : React.createElement(TooltipText, null, text)),\n withTriangle && React.createElement(Triangle, { id: \"veeqo-components-triangle\", className: classNames.triangle })));\n return (React.createElement(Container, { className: classNames.container },\n useReactPortal ? ReactDOM.createPortal(tooltipMarkup, document.body) : tooltipMarkup,\n React.createElement(Hoverable, { ref: setHoverableElement, className: classNames.hoverable, onMouseEnter: show, onMouseLeave: hide }, children)));\n};\n//# sourceMappingURL=Tooltip.js.map","import styled from 'styled-components';\nimport { BaseContainer } from '../BaseContainer';\nimport { text } from '../../theme/modules/text';\nimport { colors } from '../../theme/modules/colors';\nimport { sizes } from '../../theme/modules/sizes';\nconst BaseBadge = styled(BaseContainer).withConfig({ displayName: \"vui--BaseBadge\", componentId: \"vui--idt2e7\" }) `display:inline-flex;align-items:center;vertical-align:middle;gap:4px;padding:0.35em 0.65em;font-family:${text.bodySmall.fontFamily};font-weight:${text.bodySmall.fontWeight};font-size:75%;line-height:16px;border-radius:0.75rem;border:${(props) => (props.hideBorder ? 'none' : '1px solid transparent')};cursor:default;svg{width:${sizes.base};height:${sizes.base};}`;\nexport const DefaultBadge = styled(BaseBadge).withConfig({ displayName: \"vui--DefaultBadge\", componentId: \"vui--cjoxaq\" }) `background-color:inherit;border-color:${colors.secondary.blue.base};color:${colors.secondary.blue.base};`;\nexport const PrimaryBadge = styled(BaseBadge).withConfig({ displayName: \"vui--PrimaryBadge\", componentId: \"vui--12dvheo\" }) `border-color:${colors.secondary.blue.base};background-color:${colors.secondary.blue.lightest};color:${colors.secondary.blue.base};`;\nexport const WarningBadge = styled(BaseBadge).withConfig({ displayName: \"vui--WarningBadge\", componentId: \"vui--5cooo3\" }) `border-color:${colors.secondary.yellow.base};background-color:${colors.secondary.yellow.lightest};color:${colors.secondary.orange.dark};`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nimport { Tooltip } from '../Tooltip';\nimport { DefaultBadge, PrimaryBadge, WarningBadge } from './styled';\nimport { buildClassnames } from '../../utils/buildClassnames';\nconst variantMap = {\n default: DefaultBadge,\n primary: PrimaryBadge,\n warning: WarningBadge,\n};\nexport const Badge = ({ variant = 'default', hideBorder = false, iconSlot, tooltip, className, e2eClassName, children, }) => {\n const BadgeVariant = variantMap[variant];\n return (React.createElement(Tooltip, { text: tooltip },\n React.createElement(BadgeVariant, { className: buildClassnames([className, e2eClassName]), hideBorder: hideBorder },\n iconSlot && iconSlot,\n children && React.createElement(\"span\", null, children))));\n};\n//# sourceMappingURL=Badge.js.map","import styled from 'styled-components';\nimport { Text } from '../Text';\nimport { BaseContainer } from '../BaseContainer';\nimport { sizes } from '../../theme/modules/sizes';\nconst BannerLayout = styled(BaseContainer).withConfig({ displayName: \"vui--BannerLayout\", componentId: \"vui--5tzoxx\" }) `display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;padding:20px 24px 24px 24px;border-radius:4px;${({ accentColor }) => accentColor &&\n `\n box-shadow: 0px 1px 3px rgba(55, 66, 77, 0.15), inset 4px 0px 0px ${accentColor};\n `} background-color:${({ backgroundColor }) => backgroundColor || 'white'};`;\nconst Row = styled(BaseContainer).withConfig({ displayName: \"vui--Row\", componentId: \"vui--9nzbbv\" }) `display:flex;flex-direction:row;`;\nconst Col = styled(BaseContainer).withConfig({ displayName: \"vui--Col\", componentId: \"vui--zplr21\" }) `display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;`;\nexport const IconCol = styled(Col).withConfig({ displayName: \"vui--IconCol\", componentId: \"vui--1j9d69e\" }) `svg{width:${sizes.md};height:${sizes.md};color:${({ accentColor }) => accentColor};}`;\nexport const ChildContainer = styled(BaseContainer).withConfig({ displayName: \"vui--ChildContainer\", componentId: \"vui--wt59q7\" }) `width:100%;`;\nconst HeaderCol = styled(Col).withConfig({ displayName: \"vui--HeaderCol\", componentId: \"vui--1wkol92\" }) `flex-grow:2;margin-right:12px;`;\nconst StyledText = styled(Text).withConfig({ displayName: \"vui--StyledText\", componentId: \"vui--150p0zs\" }) `position:relative;top:-2px;`;\nexport { BannerLayout as Pill, StyledText as Text, Row, Col, HeaderCol };\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { colors } from '../../theme/modules/colors';\nimport { Pill, Text, Row, Col, HeaderCol, ChildContainer, IconCol } from './styled';\nimport { Button } from '../Button';\nimport { CrossIcon } from '../../tempIcons/CrossIcon';\nimport { sizes } from '../../theme/modules/sizes';\nconst accentColors = {\n help: colors.secondary.blue.base,\n info: colors.neutral.ink.base,\n error: colors.secondary.red.base,\n success: colors.secondary.green.base,\n};\n/**\n * The `Banner` component was previously called `Alert` (and similarly `Pill`).\n */\nexport const Banner = (_a) => {\n var { type = 'info', text, icon, onClose, className, header, children, backgroundColor = 'white' } = _a, props = __rest(_a, [\"type\", \"text\", \"icon\", \"onClose\", \"className\", \"header\", \"children\", \"backgroundColor\"]);\n const accentColor = accentColors[type];\n return (React.createElement(Pill, Object.assign({ accentColor: accentColor, className: className, backgroundColor: backgroundColor }, props),\n React.createElement(Row, null,\n icon && (React.createElement(IconCol, { style: { marginRight: sizes.md }, accentColor: accentColor }, icon)),\n children ? (React.createElement(ChildContainer, null, children)) : (React.createElement(React.Fragment, null,\n React.createElement(HeaderCol, null, header || React.createElement(Text, { variant: \"headingSmall\" }, text)),\n React.createElement(Col, null, onClose && (React.createElement(Button, { variant: \"flat\", \"aria-label\": \"Close\", icon: React.createElement(CrossIcon, null), onClick: onClose }))))))));\n};\n//# sourceMappingURL=Banner.js.map","import styled from 'styled-components';\nimport { text } from '../../../theme/modules/text';\nexport const BreadcrumbsSC = styled.ul.withConfig({ displayName: \"vui--BreadcrumbsSC\", componentId: \"vui--16f283b\" }) `list-style:none;padding:0;margin:0;display:flex;align-items:center;font-family:${text.body.fontFamily};font-weight:${text.body.fontWeight};font-size:${text.body.fontSize};line-height:${text.body.lineHeight};`;\nexport const BreadcrumbSC = styled.li.withConfig({ displayName: \"vui--BreadcrumbSC\", componentId: \"vui--19n9row\" }) `display:flex;align-items:center;.separator{display:flex;align-items:center;padding:0px 0.4rem;}a{color:inherit;text-decoration:none;text-transform:capitalize;}a:hover{text-decoration:underline;}span{font-weight:600;text-transform:capitalize;}`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nexport const RightArrowIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M5.99994 11.06L9.05327 8L5.99994 4.94L6.93994 4L10.9399 8L6.93994 12L5.99994 11.06Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=RightArrowIcon.js.map","import React from 'react';\nimport { BreadcrumbSC } from './styled';\nexport const Breadcrumb = ({ children, title, LinkComponent, href }) => {\n if (LinkComponent) {\n return (React.createElement(BreadcrumbSC, { className: \"breadcrumb\" },\n React.createElement(LinkComponent, { href: href }, title),\n children));\n }\n return (React.createElement(BreadcrumbSC, { className: \"breadcrumb\" },\n title,\n children));\n};\n//# sourceMappingURL=Breadcrumb.js.map","import React from 'react';\nimport { BreadcrumbsSC } from './components/styled';\nimport { RightArrowIcon } from '../../tempIcons/RightArrowIcon';\nimport { sizes } from '../../theme/modules/sizes';\nimport { Breadcrumb } from './components/Breadcrumb';\nconst DefaultSeparator = () => (React.createElement(RightArrowIcon, { className: \"separator\", width: sizes.base, height: sizes.base }));\nconst DefaultLink = ({ children, href }) => React.createElement(\"a\", { href: href }, children);\nconst BreadcrumbText = ({ children }) => React.createElement(\"span\", null, children);\nexport const Breadcrumbs = ({ items, Separator = React.createElement(DefaultSeparator, null), LinkComponent = DefaultLink, }) => (React.createElement(BreadcrumbsSC, { className: \"breadcrumbs\" }, items.map((item, i) => (React.createElement(Breadcrumb, { key: item.title, title: item.title, href: item.pathname, LinkComponent: i !== items.length - 1 ? LinkComponent : BreadcrumbText }, items.length !== i + 1 && Separator)))));\n//# sourceMappingURL=Breadcrumbs.js.map","export var Alignments;\n(function (Alignments) {\n Alignments[\"start\"] = \"flex-start\";\n Alignments[\"center\"] = \"center\";\n Alignments[\"end\"] = \"flex-end\";\n Alignments[\"stretch\"] = \"stretch\";\n Alignments[\"between\"] = \"space-between\";\n Alignments[\"around\"] = \"space-around\";\n})(Alignments || (Alignments = {}));\n//# sourceMappingURL=Alignments.js.map","import styled from 'styled-components';\nimport { Alignments } from './Alignments';\nimport { theme } from '../../theme';\n/**\n * Layout component.\n */\nexport const Stack = styled.div.withConfig({ displayName: \"vui--Stack\", componentId: \"vui--ikbqaf\" }) `display:flex;${(props) => {\n const { direction = 'vertical', alignX = 'start', alignY = 'start', spacing = 'base' } = props;\n let alignItems;\n let justifyContent;\n let flexDirection;\n let itemFlex;\n let marginTop = '';\n let marginLeft = '';\n if (direction === 'vertical') {\n alignItems = alignX && Alignments[alignX];\n justifyContent = alignY && Alignments[alignY];\n marginTop = theme.sizes[spacing];\n flexDirection = 'column';\n }\n else {\n alignItems = alignY && Alignments[alignY];\n justifyContent = alignX && Alignments[alignX];\n marginLeft = theme.sizes[spacing];\n flexDirection = 'row';\n }\n // These options result in 'justify-content: stretch' which doesn't exist,\n // so instead we set the flex of child elements\n if ((direction === 'vertical' && alignY === 'stretch') ||\n (direction === 'horizontal' && alignX === 'stretch')) {\n itemFlex = 1;\n }\n return `\n align-items: ${alignItems};\n justify-content: ${justifyContent};\n flex-direction: ${flexDirection};\n\n & > * {\n flex: ${itemFlex};\n }\n\n & > * + * {\n margin-top: ${marginTop};\n margin-left: ${marginLeft};\n }\n `;\n}}`;\nStack.displayName = 'Stack';\n//# sourceMappingURL=Stack.js.map","import styled from 'styled-components';\nimport { Tooltip } from '../../Tooltip';\nimport { theme } from '../../../theme';\nconst alignMap = {\n top: 'flex-start',\n center: 'center',\n};\nexport const RootLayout = styled.div.withConfig({ displayName: \"vui--RootLayout\", componentId: \"vui--3b6yzv\" }) `display:flex;align-items:center;& > * + *{margin-left:${theme.sizes.base};}`;\nexport const InputLayout = styled.div.withConfig({ displayName: \"vui--InputLayout\", componentId: \"vui--8ngm7b\" }) `align-self:stretch;display:flex;align-items:${(props) => alignMap[props.align]};width:24px;height:24px;`;\nexport const AccessoryLayout = styled.div.withConfig({ displayName: \"vui--AccessoryLayout\", componentId: \"vui--1cu5xjr\" }) `align-self:center;display:flex;align-items:center;`;\nexport const TextLayout = styled.div.withConfig({ displayName: \"vui--TextLayout\", componentId: \"vui--1na6cp4\" }) `flex:1;& > * + *{margin-top:${theme.sizes.sm};}`;\nexport const LabelText = styled.span.withConfig({ displayName: \"vui--LabelText\", componentId: \"vui--1rasg4l\" }) `font-family:${theme.text.body.fontFamily};font-size:${theme.text.body.fontSize};font-weight:${theme.text.body.fontWeight};line-height:${theme.sizes.md};color:${theme.text.body.color};`;\nexport const HintText = styled.div.withConfig({ displayName: \"vui--HintText\", componentId: \"vui--13bynjq\" }) `font-family:${theme.fontFamily};font-size:${theme.sizes[3]};line-height:${theme.sizes[4]};color:${theme.colors.neutral.ink.light};`;\nexport const ErrorText = styled.div.withConfig({ displayName: \"vui--ErrorText\", componentId: \"vui--1kh3zgo\" }) `font-family:${theme.text.error.fontFamily};font-size:${theme.text.error.fontSize};font-weight:${theme.text.error.fontWeight};line-height:${theme.text.error.lineHeight};color:${theme.text.error.color};`;\nexport const Wrapper = styled.label.withConfig({ displayName: \"vui--Wrapper\", componentId: \"vui--ogz9oa\" }) `box-sizing:border-box;&:hover{cursor:${(props) => (props.disabled ? 'default' : 'pointer')};}`;\nexport const BorderedWrapper = styled(Wrapper).withConfig({ displayName: \"vui--BorderedWrapper\", componentId: \"vui--11xzxut\" }) `border:2px solid ${theme.colors.neutral.grey.dark};border-radius:${theme.radius.md};padding:${theme.sizes.base} 0.75rem;&:hover{border-color:${theme.colors.secondary.blue.base};}& ${LabelText}{font-weight:${theme.text.bodyBold.fontWeight};}`;\nexport const BlockTooltip = styled(Tooltip).withConfig({ displayName: \"vui--BlockTooltip\", componentId: \"vui--gms4qf\" }) `display:block;&-hoverable{display:block;}`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nexport const HelpIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M11 18H13V16H11V18ZM12 2C6.48 2 2 6.48 2 12C2 17.52 6.48 22 12 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 12 2ZM12 20C7.59 20 4 16.41 4 12C4 7.59 7.59 4 12 4C16.41 4 20 7.59 20 12C20 16.41 16.41 20 12 20ZM12 6C9.79 6 8 7.79 8 10H10C10 8.9 10.9 8 12 8C13.1 8 14 8.9 14 10C14 12 11 11.75 11 15H13C13 12.75 16 12.5 16 10C16 7.79 14.21 6 12 6Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=HelpIcon.js.map","import React from 'react';\nimport { Stack } from '../Stack';\nimport { theme } from '../../theme';\nimport { Wrapper, BorderedWrapper, RootLayout, InputLayout, AccessoryLayout, TextLayout, LabelText, HintText, ErrorText, BlockTooltip, } from './components/styled';\nimport { HelpIcon } from '../../tempIcons/HelpIcon';\nexport const Choice = ({ id, label, hint, tooltip, error, bordered, Badge, Accessory, Footer, children, disabled = false, }) => {\n const contentMarkup = (React.createElement(RootLayout, null,\n React.createElement(InputLayout, { align: Accessory ? 'center' : 'top' }, children),\n Accessory && React.createElement(AccessoryLayout, null, Accessory),\n label || hint || error || Badge || Footer ? (React.createElement(TextLayout, null,\n React.createElement(Stack, { direction: \"horizontal\", alignY: \"center\", spacing: \"sm\" },\n Badge,\n label && React.createElement(LabelText, null, label),\n tooltip && (React.createElement(BlockTooltip, { text: tooltip },\n React.createElement(HelpIcon, { name: \"help\", width: theme.sizes.base, color: theme.colors.neutral.ink.lightest })))),\n hint && React.createElement(HintText, null, hint),\n error && React.createElement(ErrorText, null, error),\n Footer)) : null));\n if (bordered) {\n return (React.createElement(BorderedWrapper, { disabled: disabled, htmlFor: id }, contentMarkup));\n }\n return (React.createElement(Wrapper, { disabled: disabled, htmlFor: id }, contentMarkup));\n};\n//# sourceMappingURL=Choice.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nconst { colors, sizes, radius } = theme;\nexport const Input = styled.input.withConfig({ displayName: \"vui--Input\", componentId: \"vui--bq2l9d\" }) `appearance:none;width:18px;height:18px;background-color:transparent;border:2px solid ${colors.neutral.ink.lightest};border-radius:${radius.base};cursor:pointer;flex-shrink:0;transition:box-shadow 0.1s,background-color 0.1s;&:checked{background-color:${colors.secondary.blue.base};border-color:${colors.secondary.blue.base};background-image:url(\"data:image/svg+xml;utf-8,<svg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M8.56846 16.3657L3.86697 11.6642L2.2998 13.2313L8.56846 19.5L22.0013 6.06716L20.4341 4.5L8.56846 16.3657Z' fill='white' /></svg>\");background-repeat:no-repeat;background-size:${sizes[4]};background-position:center;}&:hover{border-color:${colors.secondary.blue.base};}&:active{border-color:${colors.secondary.blue.base};}&:focus{box-shadow:0 0 0 4px ${colors.secondary.blue.light};outline:0;}&:indeterminate{background-color:${colors.secondary.blue.base};border-color:${colors.secondary.blue.base};background-image:url(\"data:image/svg+xml;utf-8,<svg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='5' y='11' width='14' height='3' fill='white'/></svg>\");background-repeat:no-repeat;background-size:${sizes[4]};background-position:center;}&:disabled{box-shadow:none;background-color:${colors.neutral.grey.base};border-color:${colors.neutral.grey.base};color:${colors.neutral.ink.light};cursor:default;}&:checked:disabled{background-image:url(\"data:image/svg+xml;utf-8,<svg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M8.56846 16.3657L3.86697 11.6642L2.2998 13.2313L8.56846 19.5L22.0013 6.06716L20.4341 4.5L8.56846 16.3657Z' fill='%23637381' /></svg>\");}&:indeterminate:disabled{background-image:url(\"data:image/svg+xml;utf-8,<svg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='5' y='11' width='14' height='3' fill='%23637381'/></svg>\");}`;\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React, { useCallback, useEffect, useMemo, useRef } from 'react';\nimport { Choice } from '../Choice';\nimport { Input } from './styled';\nimport { generateId } from '../../utils/generateId';\nexport const Checkbox = (_a) => {\n var { checked, indeterminate, value, name, disabled, ariaLabel, className, onChange } = _a, otherProps = __rest(_a, [\"checked\", \"indeterminate\", \"value\", \"name\", \"disabled\", \"ariaLabel\", \"className\", \"onChange\"]);\n const id = useMemo(() => generateId('checkbox'), []);\n const checkboxRef = useRef(null);\n const handleChange = useCallback((e) => {\n onChange(e.currentTarget.checked, value);\n }, [onChange, value]);\n useEffect(() => {\n if (!checkboxRef.current)\n return;\n if (indeterminate === true) {\n checkboxRef.current.indeterminate = true;\n return;\n }\n checkboxRef.current.indeterminate = false;\n }, [indeterminate]);\n return (React.createElement(Choice, Object.assign({ id: id, disabled: disabled }, otherProps),\n React.createElement(Input, { ref: checkboxRef, id: id, type: \"checkbox\", checked: checked, value: value, name: name, disabled: disabled, \"aria-label\": ariaLabel, className: className, onChange: handleChange })));\n};\n//# sourceMappingURL=Checkbox.js.map","import styled from 'styled-components';\nexport const Input = styled.input.withConfig({ displayName: \"vui--Input\", componentId: \"vui--14lc9u\" }) `appearance:none;box-sizing:border-box;flex-shrink:0;width:18px;height:18px;margin:3px;background-color:transparent;border:2px solid #637381;border-radius:50%;outline:none;cursor:pointer;flex-shrink:0;transition:box-shadow 0.1s;&:checked{position:relative;border-color:#0079d1;}&:checked::before{content:'';width:10px;height:10px;position:absolute;top:2px;left:2px;background-color:#0079d1;border-radius:50%;}&:hover{border-color:#0079d1;}&:active{border-color:#0079d1;}&:focus{box-shadow:0 0 0 4px #80bce8;outline:0;}&:disabled{box-shadow:none;background-color:#dfe3e8;border-color:#959fa8;cursor:default;}&:disabled::before{background-color:#637381;}`;\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React, { forwardRef, useCallback } from 'react';\nimport { Choice } from '../Choice';\nimport { Input } from './styled';\nimport { generateId } from '../../utils/generateId';\nexport const Radio = forwardRef((_a, ref) => {\n var { checked, value, name, disabled, onChange, id } = _a, otherProps = __rest(_a, [\"checked\", \"value\", \"name\", \"disabled\", \"onChange\", \"id\"]);\n const handleChange = useCallback((e) => {\n onChange(e.currentTarget.checked, value);\n }, [onChange, value]);\n const componentId = id !== null && id !== void 0 ? id : generateId('radio');\n return (React.createElement(Choice, Object.assign({ id: componentId, disabled: disabled }, otherProps),\n React.createElement(Input, { id: componentId, type: \"radio\", checked: checked, value: value, name: name, disabled: disabled, onChange: handleChange, ref: ref })));\n});\n//# sourceMappingURL=Radio.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nexport const Fieldset = styled.fieldset.withConfig({ displayName: \"vui--Fieldset\", componentId: \"vui--z1f13i\" }) `padding:0;display:flex;flex-direction:column;border:0;& > * + *{margin-top:16px;}`;\nexport const Legend = styled.legend.withConfig({ displayName: \"vui--Legend\", componentId: \"vui--snr02n\" }) `font-family:${theme.text.inputLabel.fontFamily};font-size:${theme.text.inputLabel.fontSize};font-style:${theme.text.inputLabel.fontStyle};font-weight:${theme.text.inputLabel.fontWeight};line-height:${theme.text.inputLabel.lineHeight};text-decoration:${theme.text.inputLabel.textDecoration};color:${theme.text.inputLabel.color};`;\n//# sourceMappingURL=styled.js.map","import React, { Component } from 'react';\nimport { Radio } from '../Radio';\nimport { Checkbox } from '../Checkbox';\nimport { Fieldset, Legend } from './styled';\nexport class ChoiceList extends Component {\n constructor() {\n super(...arguments);\n this.handleChange = (value, checked) => {\n const { allowMultiple } = this.props;\n if (allowMultiple) {\n this.handleChangeMultiple(value, checked);\n return;\n }\n this.handleChangeSingle(value, checked);\n };\n this.handleChangeSingle = (value, checked) => {\n const { onChange } = this.props;\n if (checked) {\n onChange([value]);\n }\n };\n this.handleChangeMultiple = (value, checked) => {\n const { selected, onChange } = this.props;\n let newSelected = [];\n if (checked) {\n newSelected = [...selected, value];\n }\n else {\n newSelected = selected.filter((selectedValue) => selectedValue !== value);\n }\n onChange(newSelected);\n };\n }\n render() {\n const { allowMultiple, options, selected, title, disabled, bordered } = this.props;\n const InputComponent = allowMultiple ? Checkbox : Radio;\n return (React.createElement(Fieldset, { disabled: disabled },\n title && React.createElement(Legend, null, title),\n options.map((option) => (React.createElement(InputComponent, Object.assign({ key: option.value, bordered: bordered, checked: selected.includes(option.value), onChange: (checked) => this.handleChange(option.value, checked) }, option))))));\n }\n}\n//# sourceMappingURL=ChoiceList.js.map","import React from 'react';\nexport const SuccessIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM14.7708 8L10.0856 13.2468L8.22925 11.1679L7 12.5445L10.0856 16L16 9.37661L14.7708 8ZM20.1818 12C20.1818 16.5187 16.5187 20.1818 12 20.1818C7.48131 20.1818 3.81818 16.5187 3.81818 12C3.81818 7.48131 7.48131 3.81818 12 3.81818C16.5187 3.81818 20.1818 7.48131 20.1818 12Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=SuccessIcon.js.map","import React from 'react';\nexport const ClipboardIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { d: \"M19 3H14.82C14.4 1.84 13.3 1 12 1C10.7 1 9.6 1.84 9.18 3H5C3.9 3 3 3.9 3 5V21C3 22.1 3.9 23 5 23H19C20.1 23 21 22.1 21 21V5C21 3.9 20.1 3 19 3ZM12 3C12.55 3 13 3.45 13 4C13 4.55 12.55 5 12 5C11.45 5 11 4.55 11 4C11 3.45 11.45 3 12 3ZM19 21H5V5H7V8H17V5H19V21Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=ClipboardIcon.js.map","import React, { useCallback } from 'react';\nimport styled from 'styled-components';\nimport { Tooltip } from '../Tooltip';\nimport { colors } from '../../theme/modules/colors';\nimport { SuccessIcon } from '../../tempIcons/SuccessIcon';\nimport { sizes } from '../../theme/modules/sizes';\nimport { Button } from '../Button';\nimport { ClipboardIcon } from '../../tempIcons/ClipboardIcon';\nconst iconSizes = { width: sizes.base, height: sizes.base };\n/**\n * Created in here to fix orders table sizes. Bad pattern to use in main button component, as\n * touch target is below A11y guidelines.\n */\nconst XSButton = styled(Button).withConfig({ displayName: \"vui--XSButton\", componentId: \"vui--n9oowl\" }) `padding:1px;height:unset;span{height:${sizes.base};width:${sizes.base};top:unset;}`;\n/**\n * A dynamic button to facilitate copying text to a users' keyboard when clicked.\n */\nexport const CopyToClipboard = ({ className, text, onCopy }) => {\n const [copied, setCopied] = React.useState(false);\n const handleCopy = useCallback(() => {\n navigator.clipboard.writeText(text);\n if (onCopy)\n onCopy();\n setCopied(true);\n setTimeout(() => setCopied(false), 2500);\n }, [onCopy, text]);\n return (React.createElement(Tooltip, { text: copied ? 'Copied!' : 'Copy to clipboard' },\n React.createElement(XSButton, { variant: \"flat\", size: \"sm\", className: className, \"aria-label\": `${copied ? 'Copied' : 'Copy'} \"${text}\" to clipboard`, icon: copied ? (React.createElement(SuccessIcon, Object.assign({ color: colors.secondary.green.base }, iconSizes))) : (React.createElement(ClipboardIcon, Object.assign({ color: colors.secondary.blue.base }, iconSizes))), onClick: handleCopy })));\n};\n//# sourceMappingURL=CopyToClipboard.js.map","export function alignmentToFlex(align) {\n switch (align) {\n case 'left':\n return 'flex-start';\n case 'center':\n return 'center';\n case 'right':\n return 'flex-end';\n default:\n return 'flex-start';\n }\n}\n//# sourceMappingURL=alignmentToFlex.js.map","export function parseWidth(width, fallback) {\n switch (typeof width) {\n case 'string':\n return width;\n case 'number':\n return `${width}px`;\n case 'object':\n return `minmax(${parseWidth(width.min, 'max-content')}, ${parseWidth(width.max)})`;\n default:\n return fallback || '1fr';\n }\n}\n//# sourceMappingURL=parseWidth.js.map","import { theme } from '../../../theme';\nimport { parseWidth } from './parseWidth';\nimport { sumAllAfterIndex, sumAllBeforeIndex } from './sumAll';\nexport function generateTableCss({ pinnedLeft, pinnedRight, cellWidths, scrollPosition, visible, stripingMode, }) {\n const pinnedLeftStyles = pinnedLeft.map((_, index) => `\n th:nth-child(${index + 1}),\n td:nth-child(${index + 1}) {\n position: sticky;\n left: ${cellWidths ? sumAllBeforeIndex(cellWidths, index + 1) : 0}px;\n z-index: 2;\n }\n `);\n const pinnedRightStyles = pinnedRight.map((_, index) => `\n th:nth-last-child(${index + 1}),\n td:nth-last-child(${index + 1}) {\n position: sticky;\n right: ${cellWidths ? sumAllAfterIndex(cellWidths, cellWidths.length - index) : 0}px;\n }\n `);\n const isLeftShadowVisible = scrollPosition !== 'start' && scrollPosition !== 'none';\n const leftShadow = `\n th:nth-child(${pinnedLeft.length})::after,\n td:nth-child(${pinnedLeft.length})::after {\n position: absolute;\n transform: translate(100%);\n top: 0;\n right: 0;\n bottom: -1px;\n width: 30px;\n content: \"\";\n pointer-events: none;\n box-sizing: border-box;\n box-shadow: ${isLeftShadowVisible ? 'inset 10px 0 10px -8px rgb(0 0 0 / 25%)' : 'none'};\n }\n `;\n const isRightShadowVisible = scrollPosition !== 'end' && scrollPosition !== 'none';\n const rightShadow = `\n th:nth-last-child(${pinnedRight.length})::after,\n td:nth-last-child(${pinnedRight.length})::after {\n position: absolute;\n transform: translate(-100%);\n top: 0;\n left: 0;\n bottom: -1px;\n width: 30px;\n content: \"\";\n pointer-events: none;\n box-sizing: border-box;\n box-shadow: ${isRightShadowVisible ? 'inset -10px 0 10px -8px rgb(0 0 0 / 25%)' : 'none'};\n }\n `;\n const stripingRow = `\n tr:nth-child(odd) > td {\n background-color: ${theme.colors.neutral.grey.lightest};\n }\n\n tr + tr > td {\n border-top: 1px solid ${theme.colors.neutral.grey.base};\n }\n `;\n const stripingNested = `\n tbody:nth-of-type(odd) > tr > td {\n background-color: ${theme.colors.neutral.grey.lightest};\n }\n\n tbody + tbody > tr:first-child > td {\n border-top: 1px solid ${theme.colors.neutral.grey.base};\n }\n `;\n return `\n grid-template-columns: ${visible.map((col) => parseWidth(col.width)).join(' ')};\n\n th::after, td::after {\n transition: box-shadow .3s;\n }\n\n ${pinnedLeft.length > 0 ? pinnedLeftStyles : ''}\n ${pinnedRight.length > 0 ? pinnedRightStyles : ''}\n\n ${leftShadow}\n ${rightShadow}\n\n ${stripingMode === 'nested' ? stripingNested : stripingRow}\n `;\n}\n//# sourceMappingURL=generateTableCss.js.map","export function sumAllBeforeIndex(array, index) {\n return array.slice(0, index - 1).reduce((acc, val) => acc + val, 0);\n}\nexport function sumAllAfterIndex(array, index) {\n return array.slice(index).reduce((acc, val) => acc + val, 0);\n}\n//# sourceMappingURL=sumAll.js.map","/* Sorting */\nexport var SortDirection;\n(function (SortDirection) {\n SortDirection[\"ascending\"] = \"ascending\";\n SortDirection[\"descending\"] = \"descending\";\n})(SortDirection || (SortDirection = {}));\n//# sourceMappingURL=types.js.map","import React from 'react';\nexport const DoubleArrowIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M5 10L8 13L11 10H5Z\", fill: \"currentColor\" }),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M11 6L8 3L5 6L11 6Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=DoubleArrowIconIcon.js.map","import React from 'react';\nexport const ArrowUpIcon = (props) => {\n return (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { d: \"M13 20V7.83L18.59 13.42L20 12L12 4L4 12L5.41 13.41L11 7.83L11 20H13Z\", fill: \"currentColor\" })));\n};\n//# sourceMappingURL=ArrowUpIcon.js.map","import React from 'react';\nexport const ArrowDownIcon = (props) => {\n return (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { d: \"M11 4V16.17L5.41 10.58L4 12L12 20L20 12L18.59 10.59L13 16.17L13 4H11Z\", fill: \"currentColor\" })));\n};\n//# sourceMappingURL=ArrowDownIcon.js.map","import React from 'react';\nimport { theme } from '../../../theme';\nimport { SortDirection } from '../types';\nimport { DoubleArrowIcon } from '../../../tempIcons/DoubleArrowIconIcon';\nimport { ArrowUpIcon } from '../../../tempIcons/ArrowUpIcon';\nimport { ArrowDownIcon } from '../../../tempIcons/ArrowDownIcon';\nexport const GetSortIcon = ({ sortState, columnId, size }) => {\n if (!sortState || sortState.columnId !== columnId)\n return React.createElement(DoubleArrowIcon, { size: size });\n if (sortState.direction === SortDirection.ascending) {\n return React.createElement(ArrowUpIcon, { color: theme.colors.neutral.ink.dark, size: size });\n }\n return React.createElement(ArrowDownIcon, { color: theme.colors.neutral.ink.dark, size: size });\n};\n//# sourceMappingURL=GetSortIcon.js.map","/* eslint-disable react-hooks/exhaustive-deps */\nimport { useEffect, useState } from 'react';\nimport throttle from 'lodash.throttle';\nimport ResizeObserver from 'resize-observer-polyfill';\nexport function useCellWidths(tableRef, containerRef) {\n const [cellWidths, setCellWidths] = useState([]);\n const updateCellWidths = () => {\n if (!tableRef.current)\n return;\n const cells = tableRef.current.querySelectorAll('tbody tr:first-child td');\n const widths = Array.from(cells).map((cell) => cell.getBoundingClientRect().width);\n setCellWidths(widths);\n };\n useEffect(() => {\n updateCellWidths();\n }, [tableRef.current]);\n // Update cell widths when container is resized.\n useEffect(() => {\n if (!containerRef.current)\n return;\n const resizeObserverCallback = throttle(updateCellWidths, 50); // Throttle events\n const resizeObserver = new ResizeObserver(resizeObserverCallback);\n resizeObserver.observe(containerRef.current);\n // eslint-disable-next-line consistent-return\n return () => resizeObserver.disconnect();\n }, [containerRef.current]);\n return cellWidths;\n}\n//# sourceMappingURL=useCellWidths.js.map","export function useColumns(columns) {\n const visible = columns.filter((col) => col.hidden !== true);\n const pinnedLeft = visible.filter((col) => col.pinned === 'left');\n const pinnedRight = visible.filter((col) => col.pinned === 'right');\n const notPinned = visible.filter((col) => col.pinned === 'none' || !col.pinned);\n return {\n visible: [...pinnedLeft, ...notPinned, ...pinnedRight],\n pinnedLeft,\n pinnedRight,\n };\n}\n//# sourceMappingURL=useColumns.js.map","import { useEffect } from 'react';\nexport function useDragToScroll(targetRef) {\n useEffect(() => {\n if (!targetRef.current)\n return;\n let isDragging = false;\n const scrollTarget = targetRef.current;\n const position = {\n left: 0,\n x: 0,\n };\n const mouseMoveHandler = (e) => {\n if (!scrollTarget)\n return;\n const dx = e.clientX - position.x;\n scrollTarget.scrollLeft = position.left - dx;\n if (!isDragging) {\n scrollTarget.style.cursor = 'grabbing';\n scrollTarget.style.userSelect = 'none';\n }\n isDragging = true;\n };\n const mouseUpHandler = () => {\n document.removeEventListener('mousemove', mouseMoveHandler);\n document.removeEventListener('mouseup', mouseUpHandler);\n isDragging = false;\n if (!scrollTarget)\n return;\n scrollTarget.style.removeProperty('cursor');\n scrollTarget.style.removeProperty('user-select');\n };\n const mouseDownHandler = (e) => {\n if (!scrollTarget)\n return;\n position.left = scrollTarget.scrollLeft;\n position.x = e.clientX;\n document.addEventListener('mousemove', mouseMoveHandler);\n document.addEventListener('mouseup', mouseUpHandler);\n };\n scrollTarget.addEventListener('mousedown', mouseDownHandler);\n /* eslint-disable-next-line consistent-return */\n return () => scrollTarget === null || scrollTarget === void 0 ? void 0 : scrollTarget.removeEventListener('mousedown', mouseDownHandler);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [targetRef.current]);\n}\n//# sourceMappingURL=useDragToScroll.js.map","/* eslint-disable consistent-return */\n/* eslint-disable react-hooks/exhaustive-deps */\nimport { useEffect, useState } from 'react';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport throttle from 'lodash.throttle';\nexport function useScrollPosition(containerRef) {\n const [scrollPosition, setScrollPosition] = useState('start');\n const updateScrollPosition = () => {\n if (!containerRef.current)\n return;\n const { width } = containerRef.current.getBoundingClientRect();\n const { scrollLeft, scrollWidth } = containerRef.current;\n if (scrollWidth < width) {\n setScrollPosition('none');\n return;\n }\n if (scrollLeft === 0) {\n setScrollPosition('start');\n return;\n }\n if (scrollLeft + width >= scrollWidth) {\n setScrollPosition('end');\n return;\n }\n setScrollPosition('middle');\n };\n useEffect(() => {\n if (!containerRef.current)\n return;\n containerRef.current.addEventListener('scroll', updateScrollPosition);\n return () => { var _a; return (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.removeEventListener('scroll', updateScrollPosition); };\n }, [containerRef.current]);\n useEffect(() => {\n if (!containerRef.current)\n return;\n const resizeObserverCallback = throttle(updateScrollPosition, 50);\n const resizeObserver = new ResizeObserver(resizeObserverCallback);\n resizeObserver.observe(containerRef.current);\n return () => resizeObserver.disconnect();\n }, [containerRef.current]);\n return { scrollPosition, containerRef };\n}\n//# sourceMappingURL=useScrollPosition.js.map","export const defaultCellSpacing = 3;\nexport const headerCellHeight = '56px';\nexport const footerCellHeight = '56px';\n//# sourceMappingURL=constants.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nimport { alignmentToFlex } from '../utils';\nimport { defaultCellSpacing, headerCellHeight } from '../constants';\nexport const Header = styled.th.withConfig({ displayName: \"vui--Header\", componentId: \"vui--ilge6b\" }) `height:${headerCellHeight};display:flex;align-items:center;justify-content:${({ align = 'left' }) => alignmentToFlex(align)};background-color:white;padding-left:${({ spacing = defaultCellSpacing }) => theme.sizes[spacing]};padding-right:${({ spacing = defaultCellSpacing }) => theme.sizes[spacing]};border-bottom:1px solid ${theme.colors.neutral.grey.base};grid-column-end:${({ span = 1 }) => `span ${span}`};`;\n//# sourceMappingURL=Header.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { Checkbox } from '../../Checkbox';\nimport { Header } from './Header';\nexport function SelectionHeader(_a) {\n var { selected, indeterminate, onChange, selectionMode } = _a, headerProps = __rest(_a, [\"selected\", \"indeterminate\", \"onChange\", \"selectionMode\"]);\n if (selectionMode === 'single')\n return React.createElement(Header, Object.assign({}, headerProps));\n return (React.createElement(Header, Object.assign({}, headerProps),\n React.createElement(Checkbox, { checked: selected, indeterminate: indeterminate, onChange: onChange })));\n}\n//# sourceMappingURL=SelectionHeader.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nimport { alignmentToFlex } from '../utils';\nimport { defaultCellSpacing, footerCellHeight } from '../constants';\nexport const Cell = styled.td.withConfig({ displayName: \"vui--Cell\", componentId: \"vui--3tw1b6\" }) `display:flex;align-items:center;justify-content:${({ align = 'left' }) => alignmentToFlex(align)};background-color:white;padding-bottom:var(--density);padding-top:var(--density);padding-left:${({ spacing = defaultCellSpacing }) => theme.sizes[spacing]};padding-right:${({ spacing = defaultCellSpacing }) => theme.sizes[spacing]};color:${theme.text.bodySmall.color};font-family:${theme.text.bodySmall.fontFamily};font-size:${theme.text.bodySmall.fontSize};font-style:${theme.text.bodySmall.fontStyle};font-weight:${theme.text.bodySmall.fontWeight};line-height:${theme.text.bodySmall.lineHeight};grid-column-end:${({ span = 1 }) => `span ${span}`};tfoot &{min-height:${footerCellHeight};border-top:1px solid ${theme.colors.secondary.blue.base};background-color:${theme.colors.neutral.grey.lightest};}`;\n//# sourceMappingURL=Cell.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { Checkbox } from '../../Checkbox';\nimport { Radio } from '../../Radio';\nimport { Cell } from './Cell';\nexport function SelectionCell(_a) {\n var { selected, rowId, onChange, selectionMode, disabled } = _a, cellProps = __rest(_a, [\"selected\", \"rowId\", \"onChange\", \"selectionMode\", \"disabled\"]);\n if (selectionMode === 'single') {\n return (React.createElement(Cell, Object.assign({}, cellProps),\n React.createElement(Radio, { value: rowId, checked: selected, disabled: disabled, onChange: onChange })));\n }\n return (React.createElement(Cell, Object.assign({}, cellProps),\n React.createElement(Checkbox, { value: rowId, checked: selected, disabled: disabled, onChange: onChange })));\n}\n//# sourceMappingURL=SelectionCell.js.map","/* eslint-disable react/destructuring-assignment */\nimport React from 'react';\nimport { SelectionHeader } from '../components/SelectionHeader';\nimport { SelectionCell } from '../components/SelectionCell';\nconst emptySelectionState = [[], () => { }];\nexport function useSelection({ selectionMode = 'multiple', selectionState, enabledRowIds, }) {\n const selectionEnabled = !!selectionState;\n const [selectedRowIds, setSelectedRowIds] = selectionState || emptySelectionState;\n // TODO: Memoise this\n const setSelected = (selected, rowId) => {\n if (rowId === undefined || rowId === null)\n return; // Can't use falsey, must allow number 0\n if (selected && selectionMode === 'single') {\n // Replace selectedRowIds with only the current rowId\n setSelectedRowIds([rowId]);\n return;\n }\n if (selected) {\n // Add rowId to selectedRowIds\n if (selectedRowIds.includes(rowId))\n return;\n const rowIds = [...selectedRowIds, rowId];\n setSelectedRowIds(rowIds);\n }\n else {\n // Remove rowIds from selectedRowIds\n const index = selectedRowIds.findIndex((id) => id === rowId);\n if (index < 0)\n return;\n const rowIds = [...selectedRowIds];\n rowIds.splice(index, 1);\n setSelectedRowIds(rowIds);\n }\n };\n // TODO: Memoise this\n const toggleAllSelected = () => {\n if (selectedRowIds.length === enabledRowIds.length) {\n setSelectedRowIds([]);\n return;\n }\n setSelectedRowIds(enabledRowIds);\n };\n // TODO: Memoise this\n const selectionColumn = {\n id: 'selection',\n title: 'Selection',\n width: '40px',\n align: 'center',\n pinned: 'left',\n renderHeader: (column, headerProps) => (React.createElement(SelectionHeader, Object.assign({}, headerProps, { selected: selectedRowIds.length === enabledRowIds.length, indeterminate: selectedRowIds.length > 0 && selectedRowIds.length < enabledRowIds.length, onChange: toggleAllSelected, selectionMode: selectionMode }))),\n renderCell: (row, cellProps, actions, rowState) => (React.createElement(SelectionCell, Object.assign({}, cellProps, { rowId: row.id, selected: rowState.selected, onChange: actions.setSelected, selectionMode: selectionMode, disabled: rowState.disabled }))),\n };\n return {\n selectionEnabled,\n selectedRowIds,\n selectionColumn,\n setSelected,\n };\n}\n//# sourceMappingURL=useSelection.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nexport const SortIndicator = styled.div.withConfig({ displayName: \"vui--SortIndicator\", componentId: \"vui--1x79m95\" }) `width:20px;height:20px;display:flex;align-items:center;justify-content:center;background-color:white;color:${theme.colors.neutral.ink.lightest};`;\nexport const HeaderContent = styled.span.withConfig({ displayName: \"vui--HeaderContent\", componentId: \"vui--1kiwwja\" }) `display:flex;height:28px;align-items:center;gap:4px;white-space:nowrap;color:${theme.text.headingTable.color};font-family:${theme.text.headingTable.fontFamily};font-size:${theme.text.headingTable.fontSize};font-style:${theme.text.headingTable.fontStyle};font-weight:${theme.text.headingTable.fontWeight};line-height:${theme.text.headingTable.lineHeight};`;\nexport const ClickableHeaderContent = styled(HeaderContent).attrs(() => ({\n as: 'button',\n type: 'button',\n})).withConfig({ displayName: \"vui--ClickableHeaderContent\", componentId: \"vui--p1ald0\" }) `appearance:none;padding:0;border:0;border-radius:4px;background-color:transparent;&:not(:disabled):hover{cursor:pointer;}&:hover ${SortIndicator}{background-color:${theme.colors.neutral.grey.light};color:${theme.colors.neutral.ink.base};}&:focus-visible{outline:0;box-shadow:0px 0px 0px 2px ${theme.colors.secondary.blue.light};}`;\n//# sourceMappingURL=ColumnHeader.js.map","import React from 'react';\nimport { Tooltip } from '../../Tooltip';\nimport { Header } from '../components/Header';\nimport { HeaderContent, ClickableHeaderContent, SortIndicator } from '../components/ColumnHeader';\nimport { getNextSortState, GetSortIcon } from '../utils';\n/**\n * Default renderer for table header cells\n *\n * @param column Column configuration object\n * @returns Header cell instance\n */\nexport function renderHeader({ column, sortState, onChangeSort, }) {\n if (column.sortable && !sortState) {\n throw new Error(`Column '${column.id}' is configured to be sortable but the 'sortState' prop is missing.`);\n }\n if (column.hidden) {\n return null;\n }\n const headerProps = {\n key: column.id.toString(),\n id: `datatable-header-${column.id}`,\n role: 'columnheader',\n align: column.align,\n spacing: column.spacing,\n className: column.sortable ? 'sortable' : undefined,\n };\n // If defined, use custom renderer\n if (column.renderHeader) {\n return column.renderHeader(column, headerProps);\n }\n const handleClickSort = () => {\n if (!sortState) {\n console.log('DataGrid::renderHeader::handleClickSort - sortState is not defined');\n return;\n }\n const nextSortState = getNextSortState({ sortState, columnId: column.id });\n if (!onChangeSort) {\n console.log('DataGrid::renderHeader::handleClickSort - onChangeSort is not defined');\n return;\n }\n onChangeSort(nextSortState);\n };\n const ColumnHeaderContent = column.sortable ? ClickableHeaderContent : HeaderContent;\n const columnHeaderProps = column.sortable ? { onClick: handleClickSort } : {};\n return (React.createElement(Header, Object.assign({}, headerProps),\n React.createElement(Tooltip, { text: column.tooltip },\n React.createElement(ColumnHeaderContent, Object.assign({}, columnHeaderProps),\n column.icon && column.icon,\n column.title && React.createElement(\"span\", null, column.title),\n column.sortable && (React.createElement(SortIndicator, null,\n React.createElement(GetSortIcon, { sortState: sortState, columnId: column.id, size: 5 })))))));\n}\n//# sourceMappingURL=renderHeader.js.map","import { SortDirection } from '../types';\nexport function getNextSortState({ sortState, columnId }) {\n const isColumnSame = sortState.columnId === columnId;\n const isDefaultDirection = sortState.direction === SortDirection.ascending;\n let newSortDirection = SortDirection.ascending;\n if (isColumnSame && isDefaultDirection) {\n newSortDirection = SortDirection.descending;\n }\n return { columnId, direction: newSortDirection };\n}\n//# sourceMappingURL=getNextSortState.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\n/* Loading content shimmer animation */\nconst shimmerLight = theme.colors.neutral.grey.base;\nconst shimmerDark = theme.colors.neutral.grey.dark;\nexport const LoadingCellContent = styled.div.withConfig({ displayName: \"vui--LoadingCellContent\", componentId: \"vui--1bv9ck1\" }) `height:20px;width:75%;border-radius:${theme.radius.base};background:${shimmerLight};background-image:linear-gradient(\\n to right,\\n ${shimmerLight} 0%,\\n ${shimmerDark} 20%,\\n ${shimmerLight} 40%,\\n ${shimmerLight} 100%\\n );background-repeat:no-repeat;background-size:800px 104px;animation-duration:1s;animation-fill-mode:forwards;animation-iteration-count:infinite;animation-name:placeholderShimmer;animation-timing-function:linear;@keyframes placeholderShimmer{0%{background-position:-468px 0;}100%{background-position:468px 0;}}`;\n//# sourceMappingURL=LoadingCellContent.js.map","import React, { useEffect, useState } from 'react';\nimport styled from 'styled-components';\nimport { theme } from '../../../theme';\nimport { renderHeader } from '../renderers/renderHeader';\nimport { headerCellHeight } from '../constants';\nconst Container = styled.div.withConfig({ displayName: \"vui--Container\", componentId: \"vui--uoc40o\" }) `display:grid;grid-template-columns:auto 1fr;align-items:center;position:absolute;top:0;left:0;right:0;z-index:50;height:${headerCellHeight};background-color:white;`;\nconst Content = styled.div.withConfig({ displayName: \"vui--Content\", componentId: \"vui--x1996k\" }) `width:100%;height:100%;display:flex;align-items:center;padding:0 0.5rem;border-bottom:1px solid ${theme.colors.neutral.grey.base};& > *{flex:1;}`;\nexport function ActionBar({ selectionColumn, intersectionTargetRef, containerRef, children, }) {\n var _a;\n const [isSticky, setIsSticky] = useState(false);\n useEffect(() => {\n if (!intersectionTargetRef.current)\n return;\n const callback = (entries) => {\n entries.forEach((entry) => {\n setIsSticky(!entry.isIntersecting);\n });\n };\n const intersectionObserver = new IntersectionObserver(callback);\n intersectionObserver.observe(intersectionTargetRef.current);\n /* eslint-disable-next-line consistent-return */\n return () => intersectionObserver.disconnect();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [intersectionTargetRef.current]);\n const containerRect = (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();\n const defaultPositionStyles = {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n };\n const stickyPositionStyles = {\n position: 'fixed',\n top: 0,\n left: containerRect === null || containerRect === void 0 ? void 0 : containerRect.left,\n width: containerRect === null || containerRect === void 0 ? void 0 : containerRect.width,\n };\n const style = isSticky ? stickyPositionStyles : defaultPositionStyles;\n return (React.createElement(Container, { style: style },\n renderHeader({ column: selectionColumn }),\n React.createElement(Content, null, children)));\n}\n//# sourceMappingURL=ActionBar.js.map","import React from 'react';\nexport const VisiblityIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { d: \"M12 4.5C7 4.5 2.73 7.61 1 12C2.73 16.39 7 19.5 12 19.5C17 19.5 21.27 16.39 23 12C21.27 7.61 17 4.5 12 4.5ZM12 17C9.24 17 7 14.76 7 12C7 9.24 9.24 7 12 7C14.76 7 17 9.24 17 12C17 14.76 14.76 17 12 17ZM12 9C10.34 9 9 10.34 9 12C9 13.66 10.34 15 12 15C13.66 15 15 13.66 15 12C15 10.34 13.66 9 12 9Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=VisibilityIcon.js.map","import React from 'react';\nexport const VisiblityOffIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { d: \"M12 7C14.76 7 17 9.24 17 12C17 12.65 16.87 13.26 16.64 13.83L19.56 16.75C21.07 15.49 22.26 13.86 22.99 12C21.26 7.61 16.99 4.5 11.99 4.5C10.59 4.5 9.25 4.75 8.01 5.2L10.17 7.36C10.74 7.13 11.35 7 12 7ZM2 4.27L4.28 6.55L4.74 7.01C3.08 8.3 1.78 10.02 1 12C2.73 16.39 7 19.5 12 19.5C13.55 19.5 15.03 19.2 16.38 18.66L16.8 19.08L19.73 22L21 20.73L3.27 3L2 4.27ZM7.53 9.8L9.08 11.35C9.03 11.56 9 11.78 9 12C9 13.66 10.34 15 12 15C12.22 15 12.44 14.97 12.65 14.92L14.2 16.47C13.53 16.8 12.79 17 12 17C9.24 17 7 14.76 7 12C7 11.21 7.2 10.47 7.53 9.8ZM11.84 9.02L14.99 12.17L15.01 12.01C15.01 10.35 13.67 9.01 12.01 9.01L11.84 9.02Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=VisibilityOffIcon.js.map","import React from 'react';\nexport const ReorderIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { d: \"M3 15H21V13H3V15ZM3 19H21V17H3V19ZM3 11H21V9H3V11ZM3 5V7H21V5H3Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=ReorderIcon.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nexport const EmptyBodyContent = styled.div.withConfig({ displayName: \"vui--EmptyBodyContent\", componentId: \"vui--klb9dq\" }) `padding-top:${theme.sizes.lg};padding-bottom:${theme.sizes.lg};grid-column:${({ columnCount }) => `1 / span ${columnCount}`};display:flex;flex-direction:column;align-items:center;justify-content:center;gap:${theme.sizes.md};`;\nexport const EmptyBodyGlyphWrapper = styled.div.withConfig({ displayName: \"vui--EmptyBodyGlyphWrapper\", componentId: \"vui--12lmw1\" }) `padding:${theme.sizes.md};background-color:${theme.colors.neutral.grey.light};border-radius:${theme.radius.full};`;\n//# sourceMappingURL=EmptyBodyContent.js.map","import styled from 'styled-components';\nexport const NoWrap = styled.div.withConfig({ displayName: \"vui--NoWrap\", componentId: \"vui--kbcaqo\" }) `white-space:nowrap;`;\n//# sourceMappingURL=NoWrap.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nexport const Row = styled.tr.withConfig({ displayName: \"vui--Row\", componentId: \"vui--9t9651\" }) `display:contents;${({ selected }) => selected &&\n `\n &&&& > td {\n background-color: ${theme.colors.brand.blue.lightest};\n }\n `};${({ accentColor }) => accentColor &&\n `\n &> *:first-child {\n position: relative;\n }\n\n & > *:first-child::before {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n width: 4px;\n background-color: ${accentColor};\n }\n `}`;\n//# sourceMappingURL=Row.js.map","import styled from 'styled-components';\nexport const ScrollContainer = styled.div.withConfig({ displayName: \"vui--ScrollContainer\", componentId: \"vui--1lne8xk\" }) `position:relative;width:100%;overflow-x:auto;overflow-y:hidden;`;\n//# sourceMappingURL=ScrollContainer.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nconst defaultDensity = 'base';\nexport const TableGrid = styled.table.withConfig({ displayName: \"vui--TableGrid\", componentId: \"vui--15hxahr\" }) `min-width:100%;width:max-content;display:grid;& thead,& tbody,& tfoot{display:contents;}--density:${theme.sizes[defaultDensity]};&& tr:hover td{background-color:#f2f8fc;}${({ css }) => css}`;\n//# sourceMappingURL=TableGrid.js.map","import styled from 'styled-components';\nexport const Truncate = styled.div.withConfig({ displayName: \"vui--Truncate\", componentId: \"vui--coqvc6\" }) `overflow:hidden;text-overflow:ellipsis;white-space:nowrap;`;\n//# sourceMappingURL=Truncate.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nconst borderModeStyles = {\n full: `border-width: 1px; border-radius: ${theme.radius.base};`,\n vertical: 'border-width: 0; border-top-width: 1px; border-bottom-width: 1px;',\n none: 'border-width: 0;',\n};\nexport const Wrapper = styled.div.withConfig({ displayName: \"vui--Wrapper\", componentId: \"vui--nnuzgr\" }) `width:100%;position:relative;border-style:solid;border-color:${theme.colors.neutral.grey.dark};${({ borderMode = 'full' }) => borderModeStyles[borderMode]} &,& *{box-sizing:border-box;}`;\n//# sourceMappingURL=Wrapper.js.map","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useEffect, useRef, useState } from 'react';\nimport throttle from 'lodash.throttle';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport { theme } from '../../../theme';\nimport { headerCellHeight } from '../constants';\nimport { TableGrid } from './TableGrid';\nexport function StickyHead({ children, intersectionTargetRef, containerRef, cellWidths, tableCss, }) {\n const stickyContainerRef = useRef(null);\n const [isVisible, setIsVisible] = useState(false);\n const [containerRect, setContainerRect] = useState({\n top: 0,\n left: 0,\n width: 0,\n height: 0,\n });\n const updateContainerDimensions = () => {\n var _a;\n const targetRect = (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();\n const newRect = {\n left: (targetRect === null || targetRect === void 0 ? void 0 : targetRect.left) || 0,\n width: (targetRect === null || targetRect === void 0 ? void 0 : targetRect.width) || 0,\n top: 0,\n height: 48,\n };\n setContainerRect(newRect);\n };\n const updateContainerScrollPosition = () => {\n var _a;\n if (!containerRef.current)\n return;\n const xScrollOffset = containerRef.current.scrollLeft;\n (_a = stickyContainerRef.current) === null || _a === void 0 ? void 0 : _a.scrollTo(xScrollOffset, 0);\n };\n // Configure intersection observer to toggle sticky header on/off\n useEffect(() => {\n if (!intersectionTargetRef.current)\n return;\n const options = {\n threshold: 1.0,\n };\n const intersectionCallback = (entries) => {\n entries.forEach((entry) => {\n setIsVisible(!entry.isIntersecting);\n });\n };\n const intersectionObserver = new IntersectionObserver(intersectionCallback, options);\n intersectionObserver.observe(intersectionTargetRef.current);\n return () => intersectionObserver.disconnect(); // eslint-disable-line consistent-return\n }, [intersectionTargetRef.current]);\n // Calculate sticky header position and size to match table container\n useEffect(() => {\n if (!isVisible)\n return;\n if (!containerRef.current)\n return;\n updateContainerDimensions();\n }, [containerRef.current, isVisible]);\n // Update dimensions when container element is resized\n useEffect(() => {\n if (!isVisible)\n return;\n if (!containerRef.current)\n return;\n const resizeObserverCallback = throttle(updateContainerDimensions, 33); // Throttle events\n const resizeObserver = new ResizeObserver(resizeObserverCallback);\n resizeObserver.observe(containerRef.current);\n return () => resizeObserver.disconnect(); // eslint-disable-line consistent-return\n }, [containerRef.current, isVisible]);\n // Sync container scrolling\n useEffect(() => {\n updateContainerScrollPosition();\n }, [isVisible]);\n useEffect(() => {\n var _a;\n (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.addEventListener('scroll', updateContainerScrollPosition);\n return () => {\n var _a;\n (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.removeEventListener('scroll', updateContainerScrollPosition);\n };\n }, [containerRef.current]);\n // Render sticky header\n if (!isVisible)\n return null;\n const containerStyle = Object.assign(Object.assign({}, containerRect), { height: headerCellHeight, position: 'fixed', zIndex: 5, overflowX: 'hidden', overflowY: 'hidden', borderBottom: `1px solid ${theme.colors.neutral.grey.base}` });\n // Generate styles to sync sticky columns with \"real\" columns\n const columnsCss = cellWidths\n .map((width, index) => `\n & th:nth-child(${index + 1}) {\n width: ${width}px;\n }\n `)\n .join('');\n // Append to generated table styles\n const allCss = tableCss + columnsCss;\n return (React.createElement(\"div\", { style: containerStyle, ref: stickyContainerRef },\n React.createElement(TableGrid, { css: allCss },\n React.createElement(\"thead\", null, children))));\n}\n//# sourceMappingURL=StickyHead.js.map","export const getRowState = (rowId, { selectedRowIds, expandedRowIds, disabledRowIds, }) => {\n const rowState = {\n selected: (selectedRowIds === null || selectedRowIds === void 0 ? void 0 : selectedRowIds.includes(rowId)) || false,\n expanded: (expandedRowIds === null || expandedRowIds === void 0 ? void 0 : expandedRowIds.includes(rowId)) || false,\n disabled: (disabledRowIds === null || disabledRowIds === void 0 ? void 0 : disabledRowIds.includes(rowId)) || false,\n };\n return rowState;\n};\n//# sourceMappingURL=getRowState.js.map","import React from 'react';\nexport const InfoIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M2 12C2 6.48 6.48 2 12 2C17.52 2 22 6.48 22 12C22 17.52 17.52 22 12 22C6.48 22 2 17.52 2 12ZM4 12C4 16.41 7.59 20 12 20C16.41 20 20 16.41 20 12C20 7.59 16.41 4 12 4C7.59 4 4 7.59 4 12Z\", fill: \"currentColor\" }),\n React.createElement(\"circle\", { cx: \"12\", cy: \"7\", r: \"1\", fill: \"currentColor\" }),\n React.createElement(\"path\", { d: \"M10 16H11V11H10V10H13V16H14V17H10V16Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=InfoIcon.js.map","/* eslint-disable jsx-a11y/no-redundant-roles */\nimport React, { useRef } from 'react';\nimport { Stack } from '../Stack';\nimport { Text } from '../Text';\nimport { generateTableCss } from './utils';\nimport { useCellWidths, useColumns, useDragToScroll, useScrollPosition, useSelection, } from './hooks';\nimport { renderCell, renderFooter, renderHeader, renderLoadingCell, renderNestedCell, } from './renderers';\nimport { ActionBar } from './components/ActionBar';\nimport { Cell } from './components/Cell';\nimport { ColumnMenu } from './components/ColumnMenu';\nimport { EmptyBodyContent, EmptyBodyGlyphWrapper } from './components/EmptyBodyContent';\nimport { Header } from './components/Header';\nimport { NoWrap } from './components/NoWrap';\nimport { Row } from './components/Row';\nimport { ScrollContainer } from './components/ScrollContainer';\nimport { TableGrid } from './components/TableGrid';\nimport { Truncate } from './components/Truncate';\nimport { Wrapper } from './components/Wrapper';\nimport { SelectionCell } from './components/SelectionCell';\nimport { SelectionHeader } from './components/SelectionHeader';\nimport { StickyHead } from './components/StickyHead';\nimport { getRowState } from './utils/getRowState';\nimport { InfoIcon } from '../../tempIcons/InfoIcon';\nconst defaultEmptyState = {\n icon: React.createElement(InfoIcon, { width: 48, height: 48 }),\n heading: 'No results',\n};\nconst emptyAction = () => { };\nexport const DataTable = ({ ActionBarSlot, borderMode, columns, emptyState = defaultEmptyState, expandedRowIds, loading, loadingRowCount, onChangeSort, rows, disabledRowIds, selectionMode, selectionState, setExpanded, sortState, stripingMode, enableStickyHeader, }) => {\n // Refs\n const scrollContainerRef = useRef(null);\n const tableRef = useRef(null);\n const intersectionTargetRef = useRef(null);\n useDragToScroll(scrollContainerRef);\n // Configure row selection\n const enabledRowIds = rows.map((row) => row.id).filter((id) => !(disabledRowIds === null || disabledRowIds === void 0 ? void 0 : disabledRowIds.includes(id)));\n const { selectionEnabled, selectedRowIds, selectionColumn, setSelected } = useSelection({\n selectionMode,\n selectionState,\n enabledRowIds,\n });\n // Assign actions\n const actions = {\n setSelected: setSelected || emptyAction,\n setExpanded: setExpanded || emptyAction,\n };\n // Process columns\n const columnsWithSelection = [selectionColumn, ...columns];\n const allColumns = selectionEnabled ? columnsWithSelection : columns;\n const cellWidths = useCellWidths(tableRef, scrollContainerRef);\n const { visible, pinnedLeft, pinnedRight } = useColumns(allColumns);\n // Generate styles\n const { scrollPosition } = useScrollPosition(scrollContainerRef);\n const tableCss = generateTableCss({\n pinnedLeft,\n pinnedRight,\n cellWidths,\n scrollPosition,\n visible,\n stripingMode,\n });\n // Render states\n if (loading) {\n const loadingRows = new Array(loadingRowCount).fill(true).map(() => ({\n // generate random ID forcing all rows to re-render avoid animation de-sync\n id: Math.random() * 1000,\n data: null,\n }));\n return (React.createElement(Wrapper, { borderMode: borderMode },\n React.createElement(ScrollContainer, { ref: scrollContainerRef },\n React.createElement(TableGrid, { css: tableCss, ref: tableRef, role: \"table\" },\n React.createElement(\"thead\", { role: \"rowgroup\" },\n React.createElement(Row, { role: \"row\" }, visible.map((column) => renderHeader({ column, sortState, onChangeSort })))),\n React.createElement(\"tbody\", { role: \"rowgroup\" }, loadingRows.map((row) => (React.createElement(Row, { key: row.id }, visible.map((col) => renderLoadingCell(row, col))))))))));\n }\n if (rows.length === 0) {\n return (React.createElement(Wrapper, { borderMode: borderMode },\n React.createElement(ScrollContainer, { ref: scrollContainerRef },\n React.createElement(TableGrid, { css: tableCss, ref: tableRef, role: \"table\" },\n React.createElement(\"thead\", { role: \"rowgroup\" },\n React.createElement(Row, { role: \"row\" }, visible.map((column) => renderHeader({ column, sortState, onChangeSort })))),\n React.createElement(\"tbody\", { role: \"rowgroup\" },\n React.createElement(EmptyBodyContent, { columnCount: visible.length },\n React.createElement(EmptyBodyGlyphWrapper, null, emptyState.icon),\n React.createElement(Stack, { spacing: \"sm\", alignX: \"center\" },\n React.createElement(Text, { variant: \"headingMedium\" }, emptyState.heading),\n emptyState.subheading && (React.createElement(Text, { variant: \"subheadingMedium\" }, emptyState.subheading)))))))));\n }\n const renderRow = (row) => {\n const { e2eClassName = '', accentColor } = row;\n const rowState = getRowState(row.id, { selectedRowIds, expandedRowIds, disabledRowIds });\n return (React.createElement(Row, Object.assign({ role: \"row\", key: row.id, accentColor: accentColor, className: e2eClassName }, rowState), visible.map((col) => renderCell(row, col, actions, rowState))));\n };\n const renderNestedRow = (nestedRow, rowId) => {\n var _a, _b;\n const nestedRowE2eClassName = (_b = (_a = nestedRow === null || nestedRow === void 0 ? void 0 : nestedRow.data) === null || _a === void 0 ? void 0 : _a.e2eClassNames) === null || _b === void 0 ? void 0 : _b.row;\n const rowState = getRowState(rowId, { selectedRowIds, expandedRowIds, disabledRowIds });\n return (React.createElement(Row, { role: \"row\", key: nestedRow.id, className: nestedRowE2eClassName }, visible.map((col) => renderNestedCell(nestedRow, col, rowState))));\n };\n const renderSection = (row) => {\n var _a;\n const isExpanded = expandedRowIds === null || expandedRowIds === void 0 ? void 0 : expandedRowIds.includes(row.id);\n return (React.createElement(\"tbody\", { role: \"rowgroup\", key: row.id },\n renderRow(row),\n isExpanded && ((_a = row.nestedRows) === null || _a === void 0 ? void 0 : _a.map((nestedRow) => renderNestedRow(nestedRow, row.id)))));\n };\n const renderBody = () => {\n const hasNestedRows = !!expandedRowIds;\n const hasMultipleSections = hasNestedRows && stripingMode === 'nested';\n if (hasMultipleSections) {\n return rows.map(renderSection);\n }\n if (hasNestedRows) {\n return (React.createElement(\"tbody\", { role: \"rowgroup\" }, rows.map((row) => {\n var _a;\n const rowElement = renderRow(row);\n const isExpanded = expandedRowIds === null || expandedRowIds === void 0 ? void 0 : expandedRowIds.includes(row.id);\n const nestedRowElements = (isExpanded &&\n ((_a = row.nestedRows) === null || _a === void 0 ? void 0 : _a.map((nestedRow) => renderNestedRow(nestedRow, row.id)))) ||\n [];\n return [rowElement, ...nestedRowElements];\n })));\n }\n return React.createElement(\"tbody\", { role: \"rowgroup\" }, rows.map(renderRow));\n };\n const headersMarkup = (React.createElement(Row, { role: \"row\" }, visible.map((column) => renderHeader({ column, sortState, onChangeSort }))));\n const shouldRenderFooter = columns.some((column) => !!column.renderFooter);\n const shouldRenderActionBar = selectedRowIds.length > 0 && !!ActionBarSlot;\n return (React.createElement(Wrapper, { borderMode: borderMode },\n shouldRenderActionBar && (React.createElement(ActionBar, { selectionColumn: selectionColumn, intersectionTargetRef: intersectionTargetRef, containerRef: scrollContainerRef }, ActionBarSlot)),\n React.createElement(ScrollContainer, { ref: scrollContainerRef },\n enableStickyHeader && (React.createElement(StickyHead, { tableCss: tableCss, intersectionTargetRef: intersectionTargetRef, containerRef: scrollContainerRef, cellWidths: cellWidths }, headersMarkup)),\n React.createElement(\"div\", { ref: intersectionTargetRef, style: { height: 0 } }),\n React.createElement(TableGrid, { css: tableCss, ref: tableRef, role: \"table\" },\n React.createElement(\"thead\", { role: \"rowgroup\" }, headersMarkup),\n renderBody(),\n shouldRenderFooter && (React.createElement(\"tfoot\", { role: \"rowgroup\" },\n React.createElement(Row, { role: \"row\" }, visible.map((column) => renderFooter({ column })))))))));\n};\nDataTable.defaultProps = {\n loading: false,\n loadingRowCount: 5,\n selectionMode: 'multiple',\n stripingMode: 'row',\n enableStickyHeader: true,\n};\nDataTable.Cell = Cell;\nDataTable.ColumnMenu = ColumnMenu;\nDataTable.SelectionCell = SelectionCell;\nDataTable.SelectionHeader = SelectionHeader;\nDataTable.Header = Header;\nDataTable.Truncate = Truncate;\nDataTable.NoWrap = NoWrap;\n//# sourceMappingURL=DataTable.js.map","import React from 'react';\nimport { Cell } from '../components/Cell';\nimport { LoadingCellContent } from '../components/LoadingCellContent';\n/**\n * Default renderer for loading cells\n * @param row\n * @param column\n * @returns\n */\nexport function renderLoadingCell(row, column) {\n if (column.hidden === true) {\n return null;\n }\n const cellProps = {\n align: column.align,\n key: `${row.id}-${column.id}`,\n role: 'cell',\n spacing: column.spacing,\n };\n return (React.createElement(Cell, Object.assign({}, cellProps),\n React.createElement(LoadingCellContent, null)));\n}\n//# sourceMappingURL=renderLoadingCell.js.map","/**\n * Default renderer for table cells\n *\n * @param row\n * @param column\n * @returns\n */\nexport function renderCell(row, column, actions, rowState) {\n if (column.hidden) {\n return null;\n }\n const cellProps = {\n align: column.align,\n key: `${row.id}-${column.id}`,\n role: 'cell',\n spacing: column.spacing,\n span: column.span,\n };\n return column.renderCell(row, cellProps, actions, rowState);\n}\n//# sourceMappingURL=renderCell.js.map","import React from 'react';\nimport { Cell } from '../components/Cell';\n/**\n * Default renderer for table cells in nested rows\n *\n * @param nestedRow\n * @param column\n * @returns\n */\nexport function renderNestedCell(nestedRow, column, rowState) {\n if (column.hidden) {\n return null;\n }\n const cellProps = {\n align: column.align,\n key: `${nestedRow.id}-${column.id}`,\n role: 'cell',\n spacing: column.spacing,\n };\n if (!column.renderNestedCell) {\n return React.createElement(Cell, Object.assign({}, cellProps));\n }\n return column.renderNestedCell(nestedRow, cellProps, rowState);\n}\n//# sourceMappingURL=renderNestedCell.js.map","import React from 'react';\nimport { Cell } from '../components/Cell';\n/**\n * Default renderer for table footer cells\n *\n * @param column Column configuration object\n * @returns Footer cell instance\n */\nexport function renderFooter({ column }) {\n if (column.hidden) {\n return null;\n }\n const footerProps = {\n key: column.id,\n role: 'cell',\n align: column.align,\n spacing: column.spacing,\n };\n if (!column.renderFooter) {\n return React.createElement(Cell, Object.assign({}, footerProps));\n }\n return column.renderFooter(column, footerProps);\n}\n//# sourceMappingURL=renderFooter.js.map","import React, { useState } from 'react';\nimport { Button } from '../../Button';\nimport { Card } from '../../Card';\nimport { Popover } from '../../Popover';\nimport { Stack } from '../../Stack';\nimport { theme } from '../../../theme';\nimport { VisiblityIcon } from '../../../tempIcons/VisibilityIcon';\nimport { VisiblityOffIcon } from '../../../tempIcons/VisibilityOffIcon';\nimport { ReorderIcon } from '../../../tempIcons/ReorderIcon';\nexport function ColumnMenu({ columns, columnGroups, setColumns }) {\n const [popoverAnchor, setPopoverAnchor] = useState(null);\n const [showPopover, setShowPopover] = useState(false);\n const columnEntries = columns.map((column) => [column.id, column]);\n const columnsMap = Object.fromEntries(columnEntries);\n const groups = columnGroups.map((group) => group.map((columnId) => columnsMap[columnId]));\n const setHidden = (groupIndex, hidden) => {\n const columnIds = groups[groupIndex].map((column) => column.id);\n const newColumns = [...columns];\n columnIds.forEach((columnId) => {\n const index = newColumns.findIndex((column) => column.id === columnId);\n if (index < 0)\n return;\n newColumns[index] = Object.assign(Object.assign({}, newColumns[index]), { hidden });\n });\n setColumns(newColumns);\n };\n return (React.createElement(React.Fragment, null,\n React.createElement(Button, { ref: setPopoverAnchor, dropdown: true, onClick: () => setShowPopover(true) }, \"Columns\"),\n showPopover && (React.createElement(Popover, { anchorElement: popoverAnchor, onShouldClose: () => setShowPopover(false) },\n React.createElement(Card, { style: { width: 600 } },\n React.createElement(Stack, { alignX: \"stretch\", spacing: \"sm\" }, groups.map((group, groupIndex) => (React.createElement(Stack, { key: group[0].id, direction: \"horizontal\", alignY: \"center\", spacing: \"sm\", style: {\n border: '1px solid black',\n padding: 8,\n } },\n React.createElement(Button, { variant: \"flat\", icon: React.createElement(ReorderIcon, null) }),\n React.createElement(Stack, { spacing: \"sm\", style: { flex: 1 } }, group.map((column) => (React.createElement(\"div\", { key: column.id }, column.title)))),\n React.createElement(Stack, { direction: \"horizontal\", spacing: \"sm\" }, group[0].hidden ? (React.createElement(Button, { variant: \"flat\", icon: React.createElement(VisiblityOffIcon, null), onClick: () => setHidden(groupIndex, false), style: { color: theme.colors.neutral.ink.lightest } })) : (React.createElement(Button, { variant: \"flat\", icon: React.createElement(VisiblityIcon, null), onClick: () => setHidden(groupIndex, true) }))))))))))));\n}\n//# sourceMappingURL=ColumnMenu.js.map","import React from 'react';\nimport styled from 'styled-components';\nimport { theme } from '../../theme';\nconst List = styled.dl.withConfig({ displayName: \"vui--List\", componentId: \"vui--1lcnd5n\" }) `margin:unset;& > * + *{margin-top:${theme.sizes.base};}`;\nconst Item = styled.div.withConfig({ displayName: \"vui--Item\", componentId: \"vui--t25k5o\" }) `& > * + *{margin-top:${theme.sizes.xs};}`;\nconst ItemRow = styled.div.withConfig({ displayName: \"vui--ItemRow\", componentId: \"vui--j013c4\" }) `display:flex;justify-content:space-between;& > * + *{margin-left:${theme.sizes.base};}`;\nconst DescriptionContainer = styled.div.withConfig({ displayName: \"vui--DescriptionContainer\", componentId: \"vui--12tjaz\" }) `text-align:right;& > * + *{margin-top:${theme.sizes.xs};}`;\nconst Term = styled.dt.withConfig({ displayName: \"vui--Term\", componentId: \"vui--zavj5i\" }) `font-family:${theme.text.bodyBold.fontFamily};font-size:${theme.text.bodyBold.fontSize};font-weight:${theme.text.bodyBold.fontWeight};line-height:${theme.text.bodyBold.lineHeight};color:${theme.text.bodyBold.color};`;\nconst Description = styled.dd.withConfig({ displayName: \"vui--Description\", componentId: \"vui--7wguee\" }) `margin-left:unset;font-family:${theme.text.body.fontFamily};font-size:${theme.text.body.fontSize};font-weight:${theme.text.body.fontWeight};line-height:${theme.text.body.lineHeight};color:${theme.text.body.color};`;\nexport const DescriptionList = ({ items, horizontal }) => {\n const renderDescription = (description) => {\n if (Array.isArray(description)) {\n return description.map((d) => React.createElement(Description, { key: d }, d));\n }\n return React.createElement(Description, null, description);\n };\n const renderItem = (item) => {\n if (horizontal) {\n return (React.createElement(ItemRow, { key: item.term },\n React.createElement(Term, null, item.term),\n React.createElement(DescriptionContainer, null, renderDescription(item.description))));\n }\n return (React.createElement(Item, { key: item.term },\n React.createElement(Term, null, item.term),\n renderDescription(item.description)));\n };\n return React.createElement(List, null, items.map(renderItem));\n};\n//# sourceMappingURL=DescriptionList.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nconst { sizes, colors } = theme;\nexport const ColumnGrid = styled.div.withConfig({ displayName: \"vui--ColumnGrid\", componentId: \"vui--1tbr7pe\" }) `width:100%;display:grid;grid-template-columns:${({ showSidebar = true }) => showSidebar ? `calc(100% - 312px - ${sizes.md}) 312px` : '100% 312px'};align-items:flex-start;grid-gap:${sizes.md};transition:all 0.2s ease-in-out;& > *:nth-child(2){opacity:${({ showSidebar = true }) => (showSidebar ? '1.0' : '0')};transition:opacity 0.2s;}`;\nexport const ContentContainer = styled.div.withConfig({ displayName: \"vui--ContentContainer\", componentId: \"vui--qefy7h\" }) `width:100%;box-sizing:border-box;padding:${sizes.md};overflow-x:hidden;background-color:${colors.neutral.grey.lightest};`;\n//# sourceMappingURL=styled.js.map","import styled from 'styled-components';\nexport const InputGroup = styled.div.withConfig({ displayName: \"vui--InputGroup\", componentId: \"vui--2b6aqg\" }) `display:flex;& > *{margin-left:0;margin-right:0;box-shadow:none;}& > *:not(:last-child){border-right-width:0 !important;}& > *:hover{}& > *:focus,& > *:active{z-index:5;border-right-width:1px !important;}& > *:focus + *,& > *:active + *{border-left-width:0 !important;}& > *:not(:first-child):not(:last-child){border-top-left-radius:0 !important;border-top-right-radius:0 !important;border-bottom-left-radius:0 !important;border-bottom-right-radius:0 !important;}& > *:first-child{border-top-right-radius:0 !important;border-bottom-right-radius:0 !important;}& > *:last-child{border-top-left-radius:0 !important;border-bottom-left-radius:0 !important;}`;\n//# sourceMappingURL=index.js.map","export var ComponentSize;\n(function (ComponentSize) {\n ComponentSize[\"base\"] = \"base\";\n ComponentSize[\"sm\"] = \"sm\";\n})(ComponentSize || (ComponentSize = {}));\n//# sourceMappingURL=types.js.map","import styled from 'styled-components';\nimport { Stack } from '../../components/Stack';\nimport { Tooltip } from '../../components/Tooltip';\nimport { theme } from '../../theme';\nexport const Label = styled.label.withConfig({ displayName: \"vui--Label\", componentId: \"vui--u4z5d7\" }) `display:block;font-family:${theme.text.inputLabel.fontFamily};font-size:${theme.text.inputLabel.fontSize};font-weight:${theme.text.inputLabel.fontWeight};line-height:${theme.text.inputLabel.lineHeight};color:${theme.text.inputLabel.color};`;\nexport const Hint = styled.span.withConfig({ displayName: \"vui--Hint\", componentId: \"vui--dhtep4\" }) `display:block;font-family:${theme.fontFamily};font-size:${theme.sizes[3]};line-height:${theme.sizes[4]};color:${theme.colors.neutral.ink.light};`;\nexport const Error = styled.span.withConfig({ displayName: \"vui--Error\", componentId: \"vui--1fu4njf\" }) `display:block;font-family:${theme.text.error.fontFamily};font-size:${theme.text.error.fontSize};font-weight:${theme.text.error.fontWeight};line-height:${theme.text.error.lineHeight};color:${theme.text.error.color};&::before{content:'';position:absolute;top:0;bottom:0;left:calc(${theme.sizes[2]} * -1);width:2px;background-color:${theme.colors.secondary.red.base};}`;\nexport const RootStack = styled(Stack).withConfig({ displayName: \"vui--RootStack\", componentId: \"vui--1r762o2\" }) `position:relative;`;\nexport const BlockTooltip = styled(Tooltip).withConfig({ displayName: \"vui--BlockTooltip\", componentId: \"vui--1wskrbx\" }) `display:block;&-hoverable{display:block;}`;\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React, { useMemo } from 'react';\nimport { theme } from '../../theme';\nimport { Stack } from '../../components/Stack';\nimport { RootStack, Label, Hint, Error, BlockTooltip } from './styled';\nimport { HelpIcon } from '../../tempIcons/HelpIcon';\nimport { generateId } from '../../utils/generateId';\nexport const withLabels = (Component) => (_a) => {\n var { label, hint, error, tooltip } = _a, otherProps = __rest(_a, [\"label\", \"hint\", \"error\", \"tooltip\"]);\n const componentId = useMemo(() => generateId(Component.name), []);\n if (!label) {\n return React.createElement(Component, Object.assign({ hasError: !!error }, otherProps));\n }\n return (React.createElement(RootStack, { spacing: \"sm\", alignX: \"stretch\" },\n React.createElement(\"div\", null,\n React.createElement(Stack, { direction: \"horizontal\", alignY: \"center\", spacing: \"sm\" },\n React.createElement(Label, { htmlFor: componentId }, label),\n tooltip && (React.createElement(BlockTooltip, { text: tooltip },\n React.createElement(HelpIcon, { width: theme.sizes.base, height: theme.sizes.base, color: theme.colors.neutral.ink.light })))),\n hint && React.createElement(Hint, null, hint)),\n React.createElement(Component, Object.assign({ id: componentId, hasError: !!error }, otherProps)),\n error && React.createElement(Error, null, error)));\n};\n//# sourceMappingURL=withLabels.js.map","import styled, { css } from 'styled-components';\nimport { theme } from '../../theme';\nconst pseudoStates = ({ hasError, inputSize }) => css `&{--outline-size:${inputSize === 'sm' ? '2px' : '4px'};}&:focus{border-color:#0079d1;box-shadow:0 0 0 var(--outline-size)#80bce8;outline:0;}&:invalid{border-color:#eb5757;box-shadow:0 0 0 var(--outline-size)#f7bcbc;}&:disabled{box-shadow:none;background-color:#f2f3f5;border-color:#959fa8;color:#637381;}${hasError &&\n `\n &,\n &:focus {\n border-color: #EB5757;\n }\n\n &:focus {\n box-shadow: 0 0 0 var(--outline-size) #F7BCBC;\n }\n `}`;\nexport const Input = styled.input.withConfig({ displayName: \"vui--Input\", componentId: \"vui--1o6oill\" }) `font-family:${theme.fontFamily};box-sizing:border-box;display:flex;align-items:center;justify-content:center;padding:0 12px;border-radius:4px;border:1px solid #959fa8;color:#1b2126;${({ inputSize }) => {\n let height = '40px';\n let fontSize = '14px';\n if (inputSize === 'sm') {\n height = '32px';\n fontSize = '12px';\n }\n return `\n height: ${height};\n font-size: ${fontSize};\n `;\n}} ${pseudoStates} &::-webkit-outer-spin-button,&::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}&[type='number']{-moz-appearance:textfield;width:8ch;text-align:right;}`;\nexport const Textarea = styled.textarea.withConfig({ displayName: \"vui--Textarea\", componentId: \"vui--1jp908v\" }) `box-sizing:border-box;width:100%;padding:8px;border-radius:4px;border:1px solid #959fa8;color:#1b2126;${pseudoStates}`;\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React, { useCallback, forwardRef } from 'react';\nimport { generateId } from '../../utils/generateId';\nimport { Input, Textarea } from './styled';\nimport { ComponentSize } from '../types';\nconst NUMBER_REGEX = /^-?[0-9]*\\.?[0-9]+$/;\nexport const TextField = forwardRef((_a, ref) => {\n var { id, className, disabled = false, hasError, max, min, multiline = false, name, onChange, pattern, placeholder, rows = '3', size = ComponentSize.base, step, type = 'text', value, spellCheck = false } = _a, otherProps = __rest(_a, [\"id\", \"className\", \"disabled\", \"hasError\", \"max\", \"min\", \"multiline\", \"name\", \"onChange\", \"pattern\", \"placeholder\", \"rows\", \"size\", \"step\", \"type\", \"value\", \"spellCheck\"]);\n const handleChange = useCallback((event) => {\n if (!onChange)\n return;\n const newValue = event.currentTarget.value;\n if (newValue === '') {\n onChange(newValue);\n return;\n }\n if (type !== 'number') {\n onChange(newValue);\n return;\n }\n const reg = new RegExp(NUMBER_REGEX);\n if (!reg.test(newValue)) {\n return;\n }\n onChange(newValue);\n }, [onChange, type]);\n const componentId = id !== null && id !== void 0 ? id : generateId('textfield');\n if (type === 'text' && multiline) {\n return (React.createElement(Textarea, Object.assign({ className: className, disabled: disabled, hasError: hasError, id: componentId, name: name, onChange: handleChange, placeholder: placeholder, rows: rows, value: value, spellCheck: spellCheck, ref: ref }, otherProps)));\n }\n return (React.createElement(Input, Object.assign({ className: className, disabled: disabled, hasError: hasError, id: componentId, inputSize: size, max: max, min: min, name: name, onChange: handleChange, placeholder: placeholder, step: step, type: type, value: value, spellCheck: spellCheck, ref: ref }, otherProps)));\n});\n//# sourceMappingURL=TextField.js.map","import { withLabels } from '../../hoc';\nimport { TextField as StandardTextField } from './TextField';\nexport const TextField = withLabels(StandardTextField);\nTextField.displayName = 'TextField';\n//# sourceMappingURL=index.js.map","import styled from 'styled-components';\nimport { Text } from '../Text';\nimport { TextField } from '../TextField';\nimport { Button } from '../Button';\nimport { BaseContainer } from '../BaseContainer';\nimport { theme } from '../../theme';\nconst Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--31hvgq\" }) `display:flex;flex-direction:column;position:relative;`;\nconst Row = styled(BaseContainer).withConfig({ displayName: \"vui--Row\", componentId: \"vui--fkaqbt\" }) `display:flex;align-items:center;margin-top:4px;gap:8px;`;\nconst StyledTextField = styled(TextField).withConfig({ displayName: \"vui--StyledTextField\", componentId: \"vui--sglucf\" }) `width:52px;margin:0;padding:0 6px;&&&{text-align:left;border-color:${theme.colors.neutral.ink.lightest};}`;\nconst StyledButton = styled(Button).withConfig({ displayName: \"vui--StyledButton\", componentId: \"vui--m1c7se\" }) `padding:0 6px;border-color:${theme.colors.neutral.ink.lightest};`;\nconst Label = styled(Text).withConfig({ displayName: \"vui--Label\", componentId: \"vui--1cuqy49\" }) ``;\nconst Error = styled.span.withConfig({ displayName: \"vui--Error\", componentId: \"vui--1yz94gf\" }) `display:block;font-family:${theme.text.error.fontFamily};font-size:${theme.text.error.fontSize};font-weight:${theme.text.error.fontWeight};line-height:${theme.text.error.lineHeight};color:${theme.text.error.color};&::before{content:'';position:absolute;top:0;bottom:0;left:calc(${theme.sizes[2]} * -1);width:2px;background-color:${theme.colors.secondary.red.base};}`;\nconst Hint = styled.span.withConfig({ displayName: \"vui--Hint\", componentId: \"vui--d0gr40\" }) `display:block;font-family:${theme.fontFamily};font-size:${theme.sizes[3]};line-height:${theme.sizes[4]};color:${theme.colors.neutral.ink.light};`;\nexport { Container, Row, Error, Hint, StyledTextField as TextField, StyledButton as Button, Label };\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { InputGroup } from '../InputGroup';\nimport { ComponentSize } from '../types';\nimport { withLabels } from '../../hoc';\nimport { Container, Row, TextField, Button } from './styled';\nimport { CrossIcon } from '../../tempIcons/CrossIcon';\nimport { theme } from '../../theme';\nexport const DimensionsInput = withLabels((_a) => {\n var { size = ComponentSize.base, handleChangeHeight, handleChangeWidth, handleChangeLength, className, height, width, length, unit } = _a, rest = __rest(_a, [\"size\", \"handleChangeHeight\", \"handleChangeWidth\", \"handleChangeLength\", \"className\", \"height\", \"width\", \"length\", \"unit\"]);\n return (React.createElement(Container, { className: className },\n React.createElement(Row, null,\n React.createElement(TextField, Object.assign({ onChange: handleChangeLength, size: size, name: \"length\", type: \"number\", placeholder: \"L\", value: length }, rest)),\n React.createElement(CrossIcon, { height: theme.sizes.base, width: theme.sizes.base }),\n React.createElement(TextField, Object.assign({ onChange: handleChangeWidth, size: size, name: \"width\", type: \"number\", placeholder: \"W\", value: width }, rest)),\n React.createElement(CrossIcon, { height: theme.sizes.base, width: theme.sizes.base }),\n React.createElement(InputGroup, null,\n React.createElement(TextField, Object.assign({ onChange: handleChangeHeight, size: size, name: \"height\", type: \"number\", placeholder: \"H\", value: height }, rest)),\n React.createElement(Button, { size: size }, unit)))));\n});\nDimensionsInput.displayName = 'DimensionsInput';\n//# sourceMappingURL=DimensionsInput.js.map","import { useCallback, useEffect, useRef } from 'react';\n/**\n * Close a menu or modal by clicking out of it\n */\nexport const useClickOutside = (isOpen, onClose) => {\n const ref = useRef(null);\n const escapeListener = useCallback((e) => {\n if (e.key === 'Escape') {\n onClose === null || onClose === void 0 ? void 0 : onClose();\n }\n }, [onClose]);\n const clickListener = useCallback((e) => {\n if (!ref.current.contains(e.target)) {\n onClose === null || onClose === void 0 ? void 0 : onClose();\n }\n }, [onClose]);\n useEffect(() => {\n if (isOpen) {\n document.addEventListener('click', clickListener);\n document.addEventListener('keyup', escapeListener);\n return () => {\n document.removeEventListener('click', clickListener);\n document.removeEventListener('keyup', escapeListener);\n };\n }\n return undefined;\n }, [clickListener, escapeListener, isOpen]);\n return ref;\n};\n//# sourceMappingURL=useClickOutside.js.map","import { useState, useCallback } from 'react';\nexport function useDropdown() {\n const [shouldShowDropdown, setShouldShowDropdown] = useState(false);\n const toggleShouldShowDropdown = useCallback(() => setShouldShowDropdown(!shouldShowDropdown), [shouldShowDropdown, setShouldShowDropdown]);\n const closeDropdown = useCallback(() => setShouldShowDropdown(false), [setShouldShowDropdown]);\n return {\n shouldShowDropdown,\n toggleShouldShowDropdown,\n setShouldShowDropdown,\n closeDropdown,\n };\n}\n//# sourceMappingURL=useDropdown.js.map","import React, { useEffect, useState } from 'react';\n// A React hook based on: https://github.com/WICG/focus-visible\nexport const FocusVisibleContext = React.createContext({\n hadKeyboardEvent: true,\n isInitialized: false,\n});\nexport function FocusVisibleManager({ children }) {\n const [hadKeyboardEvent, setHadKeyboardEvent] = useState(true);\n useEffect(() => {\n function onPointerDown() {\n setHadKeyboardEvent(false);\n }\n /**\n * When the polfyill first loads, assume the user is in keyboard modality.\n * If any event is received from a pointing device (e.g. mouse, pointer,\n * touch), turn off keyboard modality.\n * This accounts for situations where focus enters the page from the URL bar.\n * @param {Event} e\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n function onInitialPointerMove(e) {\n // Work around a Safari quirk that fires a mousemove on <html> whenever the\n // window blurs, even if you're tabbing out of the page. ¯\\_(ツ)_/¯\n if (e.target.nodeName && e.target.nodeName.toLowerCase() === 'html') {\n return;\n }\n setHadKeyboardEvent(false);\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n removeInitialPointerMoveListeners();\n }\n /**\n * Add a group of listeners to detect usage of any pointing devices.\n * These listeners will be added when the polyfill first loads, and anytime\n * the window is blurred, so that they are active when the window regains\n * focus.\n */\n function addInitialPointerMoveListeners() {\n document.addEventListener('mousemove', onInitialPointerMove);\n document.addEventListener('mousedown', onInitialPointerMove);\n document.addEventListener('mouseup', onInitialPointerMove);\n document.addEventListener('pointermove', onInitialPointerMove);\n document.addEventListener('pointerdown', onInitialPointerMove);\n document.addEventListener('pointerup', onInitialPointerMove);\n document.addEventListener('touchmove', onInitialPointerMove);\n document.addEventListener('touchstart', onInitialPointerMove);\n document.addEventListener('touchend', onInitialPointerMove);\n }\n function removeInitialPointerMoveListeners() {\n document.removeEventListener('mousemove', onInitialPointerMove);\n document.removeEventListener('mousedown', onInitialPointerMove);\n document.removeEventListener('mouseup', onInitialPointerMove);\n document.removeEventListener('pointermove', onInitialPointerMove);\n document.removeEventListener('pointerdown', onInitialPointerMove);\n document.removeEventListener('pointerup', onInitialPointerMove);\n document.removeEventListener('touchmove', onInitialPointerMove);\n document.removeEventListener('touchstart', onInitialPointerMove);\n document.removeEventListener('touchend', onInitialPointerMove);\n }\n /**\n * If the most recent user interaction was via the keyboard;\n * and the key press did not include a meta, alt/option, or control key;\n * then the modality is keyboard. Otherwise, the modality is not keyboard.\n * Apply `focus-visible` to any current active element and keep track\n * of our keyboard modality state with `hadKeyboardEvent`.\n * @param {KeyboardEvent} e\n */\n function onKeyDown(e) {\n if (e.metaKey || e.altKey || e.ctrlKey) {\n return;\n }\n setHadKeyboardEvent(true);\n }\n /**\n * If the user changes tabs, keep track of whether or not the previously\n * focused element had .focus-visible.\n * @param {Event} e\n */\n function onVisibilityChange() {\n if (document.visibilityState === 'hidden') {\n // If the tab becomes active again, the browser will handle calling focus\n // on the element (Safari actually calls it twice).\n // If this tab change caused a blur on an element with focus-visible,\n // re-apply the class when the user switches back to the tab.\n setHadKeyboardEvent(true);\n addInitialPointerMoveListeners();\n }\n }\n // For some kinds of state, we are interested in changes at the global scope\n // only. For example, global pointer input, global key presses and global\n // visibility change should affect the state at every scope:\n document.addEventListener('keydown', onKeyDown, true);\n document.addEventListener('mousedown', onPointerDown, true);\n document.addEventListener('pointerdown', onPointerDown, true);\n document.addEventListener('touchstart', onPointerDown, true);\n document.addEventListener('visibilitychange', onVisibilityChange, true);\n addInitialPointerMoveListeners();\n return () => {\n document.removeEventListener('keydown', onKeyDown, true);\n document.removeEventListener('mousedown', onPointerDown, true);\n document.removeEventListener('pointerdown', onPointerDown, true);\n document.removeEventListener('touchstart', onPointerDown, true);\n document.removeEventListener('visibilitychange', onVisibilityChange, true);\n removeInitialPointerMoveListeners();\n };\n }, [setHadKeyboardEvent]);\n return (\n // eslint-disable-next-line react/jsx-no-constructed-context-values\n React.createElement(FocusVisibleContext.Provider, { value: { hadKeyboardEvent, isInitialized: true } }, children));\n}\nexport function useFocusVisible() {\n const [isFocused, setIsFocused] = React.useState(false);\n const { hadKeyboardEvent, isInitialized } = React.useContext(FocusVisibleContext);\n const onFocus = React.useCallback(() => {\n if (!isFocused)\n setIsFocused(true);\n }, [isFocused]);\n const onBlur = React.useCallback(() => {\n if (isFocused)\n setIsFocused(false);\n }, [isFocused]);\n let focusVisible;\n if (isInitialized) {\n focusVisible = hadKeyboardEvent && isFocused;\n }\n else {\n // Fallback to focused when the `FocusVisibleManager` is not used.\n focusVisible = isFocused;\n }\n return React.useMemo(() => ({\n focusVisible,\n onFocus,\n onBlur,\n }), [focusVisible, onBlur, onFocus]);\n}\n//# sourceMappingURL=useFocusVisible.js.map","import { useState, useCallback } from 'react';\nexport const useHover = (initialState = false) => {\n const [isHovered, setIsHovered] = useState(initialState);\n const handleEnter = useCallback(() => setIsHovered(true), [setIsHovered]);\n const handleLeave = useCallback(() => setIsHovered(false), [setIsHovered]);\n return [isHovered, handleEnter, handleLeave];\n};\n//# sourceMappingURL=useHover.js.map","import { useEffect, useState } from 'react';\n/**\n * A hook to check if a component's contents are overflowing from its boundaries\n * (scrollbar is visible).\n */\nexport const useIsOverflowing = (ref) => {\n const [isOverflowing, setIsOverflowing] = useState(false);\n const [isAtBottom, setIsAtBottom] = useState(false);\n useEffect(() => {\n if (!ref)\n return;\n const resizeObserver = new ResizeObserver(() => {\n const hasOverflow = ref.scrollHeight > ref.clientHeight;\n setIsOverflowing(hasOverflow);\n });\n resizeObserver.observe(ref);\n // eslint-disable-next-line consistent-return\n return () => { resizeObserver.disconnect(); };\n }, [ref]);\n const onScroll = (event) => {\n if (!ref)\n return;\n const { scrollTop, scrollHeight, clientHeight } = event.target;\n setIsAtBottom(scrollHeight - scrollTop - clientHeight <= 0);\n };\n return { isOverflowing: isOverflowing && !isAtBottom, onScroll };\n};\n//# sourceMappingURL=useIsOverflowing.js.map","import styled from 'styled-components';\nimport { colors } from '../../theme/modules/colors';\nimport { BaseContainer } from '../BaseContainer';\nimport { Text } from '../Text';\nimport { AnimatedDropdown } from '../AnimatedDropdown';\nimport { CrossIcon } from '../../tempIcons/CrossIcon';\nimport { DownArrowIcon } from '../../tempIcons/DownArrowIcon';\nimport { sizes } from '../../theme/modules/sizes';\nconst Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--ujckjn\" }) `display:inline-flex;flex-direction:row;align-items:center;background-color:${colors.neutral.grey.base};border-radius:4px;padding:4px 8px;cursor:pointer;svg{width:${sizes.base};height:${sizes.base};}`;\nconst NonSelectableText = styled(Text).withConfig({ displayName: \"vui--NonSelectableText\", componentId: \"vui--oath0b\" }) `user-select:none;`;\nconst GroupLabel = styled(NonSelectableText).withConfig({ displayName: \"vui--GroupLabel\", componentId: \"vui--ln021\" }) `margin-right:4px;`;\nconst MainIcon = styled(DownArrowIcon).withConfig({ displayName: \"vui--MainIcon\", componentId: \"vui--za0kgi\" }) `margin-left:4px;transform:rotate(${(props) => (props.shouldShow ? '180deg' : '0')});width:10px;height:10px;`;\nconst StyledCrossIcon = styled(CrossIcon).withConfig({ displayName: \"vui--StyledCrossIcon\", componentId: \"vui--8epxko\" }) `margin-left:4px;height:10px;width:10px;`;\nconst Content = styled(BaseContainer).withConfig({ displayName: \"vui--Content\", componentId: \"vui--1wgdg8n\" }) `display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;`;\nconst Header = styled(BaseContainer).withConfig({ displayName: \"vui--Header\", componentId: \"vui--188pxr2\" }) `display:flex;flex-direction:row;justify-content:flex-start;align-items:center;padding:12px 18px;border-bottom:1px solid ${colors.neutral.grey.base};svg{color:${({ color }) => color};width:${sizes[5]};height:${sizes[5]};margin-right:10px;}`;\nexport { Container, Text, AnimatedDropdown as Dropdown, GroupLabel, Content, Header, MainIcon, StyledCrossIcon as CrossIcon, };\n//# sourceMappingURL=styled.js.map","import React, { useCallback } from 'react';\nimport { useDropdown } from '../../hooks';\nimport { colors } from '../../theme/modules/colors';\nimport { Container, Text, Dropdown, GroupLabel, MainIcon, CrossIcon, Content, Header, } from './styled';\nimport { buildClassnames } from '../../utils/buildClassnames';\nconst generateClassNames = (prefix) => ({\n filterTagDropdown: prefix ? `${prefix}-filter-tag-dropdown` : undefined,\n container: prefix ? `${prefix}-container` : undefined,\n cross: prefix ? `${prefix}-cross` : undefined,\n});\nexport const FilterTag = ({ className, e2eClassName, label, text, iconSlot, fill = colors.secondary.blue.base, content, footer, onClickAway, onClick, shouldCloseOnClickAway = true, }) => {\n const classNames = generateClassNames(className);\n const e2eClassNames = generateClassNames(e2eClassName);\n const { shouldShowDropdown, toggleShouldShowDropdown, closeDropdown } = useDropdown();\n const handleClick = useCallback((event) => {\n toggleShouldShowDropdown();\n if (onClickAway && shouldShowDropdown)\n onClickAway(event);\n }, [toggleShouldShowDropdown, onClickAway, shouldShowDropdown]);\n const handleClickAway = useCallback((event) => {\n // Escape hatch to apply custom behavior when clicked away\n if (onClickAway)\n onClickAway(event, closeDropdown);\n // Default clickAway behavior (closes the dropdown)\n if (shouldCloseOnClickAway)\n closeDropdown();\n }, [closeDropdown, onClickAway, shouldCloseOnClickAway]);\n const shouldShowSimple = !content;\n return shouldShowSimple ? (React.createElement(Container, { className: buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.container, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.container]), onClick: onClick },\n label && React.createElement(GroupLabel, { variant: \"subheadingSmallBold\" }, `${label}:`),\n React.createElement(Text, null, text),\n React.createElement(CrossIcon, { className: buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.cross, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.cross]), name: \"cross\", size: \"base\", color: colors.neutral.ink.base }))) : (React.createElement(Dropdown, { className: classNames.filterTagDropdown, shouldShowDropdown: shouldShowDropdown, onClickAway: handleClickAway, cta: React.createElement(Container, { className: classNames.container, onClick: handleClick },\n label && React.createElement(GroupLabel, { variant: \"subheadingSmallBold\" }, `${label}:`),\n React.createElement(Text, null, text),\n React.createElement(MainIcon, { color: colors.neutral.ink.base, name: \"downArrow\", shouldShow: shouldShowDropdown })) },\n React.createElement(Content, null,\n React.createElement(Header, { color: fill },\n iconSlot,\n React.createElement(Text, { variant: \"bodyBold\" }, label)),\n content,\n footer)));\n};\n//# sourceMappingURL=FilterTag.js.map","import styled from 'styled-components';\nimport { BaseContainer } from '../BaseContainer';\nimport { sizes } from '../../theme/modules/sizes';\nexport const Grid = styled(BaseContainer).withConfig({ displayName: \"vui--Grid\", componentId: \"vui--kz0fa5\" }) `display:grid;grid-template-columns:repeat(${({ columns }) => columns}, 1fr);grid-gap:${({ spacing = 'base' }) => (spacing ? sizes[spacing] : 0)};`;\n//# sourceMappingURL=index.js.map","import React from 'react';\nexport const PlaceholderImage = (props) => (React.createElement(\"svg\", Object.assign({ width: \"24\", height: \"24\", viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M21.3333 0C22.8 0 24 1.2 24 2.66667V21.3333C24 22.8 22.8 24 21.3333 24H2.66667C1.2 24 0 22.8 0 21.3333V2.66667C0 1.2 1.2 0 2.66667 0H21.3333ZM10.6667 18.0133L7.33333 14L2.66667 20H21.3333L15.3333 12L10.6667 18.0133Z\", fill: \"#CDD1D5\" })));\n//# sourceMappingURL=PlaceholderImage.js.map","import styled from 'styled-components';\nexport const Container = styled.div.withConfig({ displayName: \"vui--Container\", componentId: \"vui--zx358v\" }) ``;\nexport const CommonImage = styled.img.withConfig({ displayName: \"vui--CommonImage\", componentId: \"vui--b3uukr\" }) `box-sizing:border-box;cursor:${({ previewEnabled }) => (previewEnabled ? 'zoom-in' : 'default')};`;\nexport const PreviewImageContainer = styled.div.withConfig({ displayName: \"vui--PreviewImageContainer\", componentId: \"vui--1x57v09\" }) `z-index:10;background-color:transparent;`;\nexport const PreviewImage = styled.img.withConfig({ displayName: \"vui--PreviewImage\", componentId: \"vui--7k8es9\" }) `box-shadow:0 4px 12px rgba(27, 33, 38, 0.2);`;\n//# sourceMappingURL=styled.js.map","export const generateClassNames = (prefix) => ({\n container: prefix ? `${prefix}-image-container` : undefined,\n image: prefix ? `${prefix}-image` : undefined,\n placeholder: prefix ? `${prefix}-image-placeholder` : undefined,\n previewImageContainer: prefix ? `${prefix}-image-preview-container` : undefined,\n});\n//# sourceMappingURL=utils.js.map","import React from 'react';\nimport { CalanderIcon } from '../../../tempIcons/CalendarIcon';\nimport { FailIcon } from '../../../tempIcons/FailIcon';\nconst iconSize = { width: 64, height: 64 };\nexport const defaultEmptyState = {\n icon: React.createElement(CalanderIcon, Object.assign({}, iconSize)),\n title: 'No data found',\n};\nexport const defaultErrorState = {\n icon: React.createElement(FailIcon, Object.assign({}, iconSize)),\n title: 'An error occurred when creating the table',\n subTitle: \"Please, try reloading the page once. If this doesn't solve the problem, contact support\",\n};\nexport var ScrollPosition;\n(function (ScrollPosition) {\n ScrollPosition[\"start\"] = \"start\";\n ScrollPosition[\"middle\"] = \"middle\";\n ScrollPosition[\"end\"] = \"End\";\n ScrollPosition[\"none\"] = \"none\";\n})(ScrollPosition || (ScrollPosition = {}));\n//# sourceMappingURL=constants.js.map","import React from 'react';\nexport const CalanderIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M18.3333 5.7H17.5V4H15.8333V5.7H9.16667V4H7.5V5.7H6.66667C5.74167 5.7 5.00833 6.465 5.00833 7.4L5 19.3C5 20.235 5.74167 21 6.66667 21H18.3333C19.25 21 20 20.235 20 19.3V7.4C20 6.465 19.25 5.7 18.3333 5.7ZM10.0002 11.65H8.3335V13.35H10.0002V11.65ZM13.3332 11.65H11.6665V13.35H13.3332V11.65ZM15 11.65H16.6667V13.35H15V11.65ZM6.6665 19.3H18.3332V9.94998H6.6665V19.3Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=CalendarIcon.js.map","import React from 'react';\nexport const FailIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM12.0001 20.1818C16.5187 20.1818 20.1819 16.5187 20.1819 12C20.1819 7.4813 16.5187 3.81818 12.0001 3.81818C7.48136 3.81818 3.81824 7.4813 3.81824 12C3.81824 16.5187 7.48136 20.1818 12.0001 20.1818ZM16.3536 8.80575L13.1593 12L16.3536 15.1943L15.1943 16.3536L12 13.1593L8.80575 16.3536L7.64648 15.1943L10.8408 12L7.64648 8.80575L8.80575 7.64648L12 10.8408L15.1943 7.64648L16.3536 8.80575ZM8.80571 16L8.80575 16L12 12.8058L12 12.8057L8.80571 16ZM15.1943 16L15.1943 16L16 15.1943L16 15.1943L15.1943 16ZM16 8.80575L12.8058 12L12.8057 12L16 8.80571L16 8.80575Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=FailIcon.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nimport { ScrollPosition } from './utils/constants';\nconst { text, sizes } = theme;\nconst { blue } = theme.colors.secondary;\nconst { grey } = theme.colors.neutral;\nconst { scrollbar } = theme.colors.system;\nconst fixedColumnShadow = `\n position: absolute;\n top: 0;\n bottom: -1px;\n width: 30px;\n content: \"\";\n pointer-events: none;\n box-sizing: border-box;\n transition: box-shadow .3s;\n`;\nconst startFixedColumnShadow = `\n box-shadow: inset 10px 0 10px -8px rgb(0 0 0 / 25%);\n`;\nconst endFixedColumnShadow = `\n box-shadow: inset -10px 0 10px -8px rgb(0 0 0 / 25%);\n`;\nexport const TooltipContent = styled.div.withConfig({ displayName: \"vui--TooltipContent\", componentId: \"vui--6b6999\" }) `display:flex;flex-direction:row;align-items:center;`;\nexport const Wrapper = styled.div.withConfig({ displayName: \"vui--Wrapper\", componentId: \"vui--8prdgq\" }) `width:100%;overflow-x:${(props) => (props.scrollDisabled ? 'hidden' : 'auto')};overflow-y:hidden;position:relative;border-top:1px solid ${grey.dark};border-bottom:1px solid ${grey.dark};${({ showScrollbar }) => showScrollbar\n ? `\n scrollbar-width: auto;\n\n &::-webkit-scrollbar {\n margin-top: 10px;\n width: 6px;\n height: 6px;\n }\n \n &::-webkit-scrollbar-track {\n background: ${scrollbar.background}; \n }\n \n &::-webkit-scrollbar-thumb {\n background: ${scrollbar.thumb};\n border-radius: 4px; \n }\n `\n : ''} ${({ scrollDisabled, lastStartFixedColumnsIndex, firstEndFixedColumnsIndex, scrollPosition }) => scrollDisabled\n ? ''\n : `\n td:nth-child(${lastStartFixedColumnsIndex}):after,\n th:nth-child(${lastStartFixedColumnsIndex}):after {\n right: 0;\n transform: translate(100%);\n ${fixedColumnShadow};\n\n ${scrollPosition === ScrollPosition.middle || scrollPosition === ScrollPosition.end\n ? startFixedColumnShadow\n : ''};\n };\n\n td:nth-last-child(${firstEndFixedColumnsIndex}):after,\n th:nth-last-child(${firstEndFixedColumnsIndex}):after {\n left: 0;\n transform: translate(-100%);\n ${fixedColumnShadow};\n\n ${scrollPosition === ScrollPosition.start || scrollPosition === ScrollPosition.middle\n ? endFixedColumnShadow\n : ''};\n };\n `}`;\nexport const WrapperBordered = styled(Wrapper).withConfig({ displayName: \"vui--WrapperBordered\", componentId: \"vui--1uzcmg4\" }) `border:1px solid ${grey.dark};border-radius:4px;`;\nexport const Head = styled.thead.withConfig({ displayName: \"vui--Head\", componentId: \"vui--tbv1ab\" }) `background-color:white;`;\nexport const Body = styled.tbody.withConfig({ displayName: \"vui--Body\", componentId: \"vui--1f7jdxq\" }) `tr{${({ fixedColumnsStyle }) => fixedColumnsStyle};}& + & > tr:first-child > td{border-top:1px solid ${grey.base};}tr:not(:first-child)> td{border-top:1px solid transparent;}&&& tr:hover td{background-color:#ebf4fb;}`;\nexport const Foot = styled.tfoot.withConfig({ displayName: \"vui--Foot\", componentId: \"vui--1ug6bgl\" }) `& td{background-color:${grey.lightest};padding:1.5rem 1rem;border-top:1px solid ${blue.base};}`;\nexport const Row = styled.tr.withConfig({ displayName: \"vui--Row\", componentId: \"vui--ostkmy\" }) `&.hidden{visibility:collapse;}${({ accentColor }) => accentColor &&\n `\n & > td:first-child::before {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n width: 4px;\n background-color: ${accentColor}; \n }\n `}`;\nexport const Cell = styled.td.withConfig({ displayName: \"vui--Cell\", componentId: \"vui--9fl65z\" }) `position:relative;padding:1.25rem 1rem;text-align:${({ align }) => align || 'left'};background-color:white;font-family:${text.bodySmall.fontFamily};font-size:${text.bodySmall.fontSize};font-weight:${text.bodySmall.fontWeight};color:${text.bodySmall.color};line-height:${sizes.base};width:${({ grow }) => (grow ? '100%' : 'auto')};& > *{vertical-align:middle;}`;\nexport const HeaderCell = styled(Cell).attrs({\n as: 'th',\n}).withConfig({ displayName: \"vui--HeaderCell\", componentId: \"vui--1mc579o\" }) `user-select:none;border-bottom:1px solid ${grey.dark};font-family:${text.bodySmallBold.fontFamily};font-size:${text.bodySmallBold.fontSize};font-weight:${text.bodySmallBold.fontWeight};color:${text.bodySmallBold.color};& span{white-space:pre-line;}&.sortable:hover{cursor:pointer;background-color:${grey.light};}`;\nconst alignmentMap = {\n left: 'flex-start',\n center: 'center',\n right: 'flex-end',\n};\nexport const HeaderCellLayout = styled.div.withConfig({ displayName: \"vui--HeaderCellLayout\", componentId: \"vui--iko9ux\" }) `display:flex;align-items:center;justify-content:${({ align }) => (align ? alignmentMap[align] : 'flex-start')};& > * + *{margin-left:0.25rem;}`;\nexport const Table = styled.table.withConfig({ displayName: \"vui--Table\", componentId: \"vui--1vjqk2m\" }) `width:100%;border-spacing:0;table-layout:${({ isFixedLayout }) => (isFixedLayout ? 'fixed' : 'auto')};${({ striped }) => striped &&\n `\n & ${Body}:nth-child(even) td {\n background-color: ${grey.lightest};\n }\n `} & *{box-sizing:border-box;${({ tableLoading }) => tableLoading &&\n `\n user-select: none;\n pointer-events: none;\n `}}${({ noWrap }) => noWrap &&\n `\n & ${HeaderCell}, & ${HeaderCell} span {\n white-space: nowrap;\n }\n `}`;\nexport const Footer = styled.tfoot.withConfig({ displayName: \"vui--Footer\", componentId: \"vui--ob9m7j\" }) `tr{${({ fixedColumnsStyle }) => fixedColumnsStyle};}& ${Cell}{border-top:1px solid ${grey.dark};background-color:${grey.lightest};padding-top:${sizes.base};padding-bottom:${sizes.base};line-height:2rem;}`;\nexport const StickyHeaderWrapper = styled.div.withConfig({ displayName: \"vui--StickyHeaderWrapper\", componentId: \"vui--5eqa3f\" }) `position:fixed;top:0;z-index:2;overflow-x:hidden;`;\nexport const FakeHeaderTable = styled(Table).withConfig({ displayName: \"vui--FakeHeaderTable\", componentId: \"vui--48b34o\" }) ``;\n//# sourceMappingURL=styled.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nimport { BaseContainer } from '../../BaseContainer';\nimport { Text } from '../../Text';\nconst SpecificStateContainer = styled(BaseContainer).withConfig({ displayName: \"vui--SpecificStateContainer\", componentId: \"vui--120wsfh\" }) `display:flex;flex-direction:column;justify-content:center;align-items:center;height:${(props) => props.height}px;background:white;`;\nconst EllipseContainer = styled(BaseContainer).withConfig({ displayName: \"vui--EllipseContainer\", componentId: \"vui--1khxo3q\" }) `display:flex;justify-content:center;align-items:center;width:120px;height:120px;border-radius:100px;background:${theme.colors.neutral.grey.base};svg{width:64px !important;height:64px !important;}`;\nconst TitleText = styled(Text).withConfig({ displayName: \"vui--TitleText\", componentId: \"vui--3cvjfj\" }) `margin-top:24px;`;\nconst SubTitleText = styled(Text).withConfig({ displayName: \"vui--SubTitleText\", componentId: \"vui--mw0wkw\" }) `margin-top:8px;`;\nexport { SpecificStateContainer, EllipseContainer, TitleText, SubTitleText };\n//# sourceMappingURL=styled.js.map","import React from 'react';\nimport { SpecificStateContainer, EllipseContainer, TitleText, SubTitleText } from './styled';\nexport const SpecificState = ({ height, icon, title, subTitle }) => (React.createElement(SpecificStateContainer, { height: height },\n React.createElement(EllipseContainer, null, icon),\n React.createElement(TitleText, { variant: \"headingLarge\" }, title),\n subTitle && React.createElement(SubTitleText, { variant: \"subheadingMedium\" }, subTitle)));\n//# sourceMappingURL=SpecificState.js.map","/* eslint-disable import/prefer-default-export */\nimport styled from 'styled-components';\nimport { theme } from '../../../theme';\nexport const CellButton = styled.button.withConfig({ displayName: \"vui--CellButton\", componentId: \"vui--14e2rl4\" }) `appearance:none;border:0;background-color:transparent;font:inherit;display:inline-block;box-sizing:border-box;width:calc(100% + 1.5rem);margin:-0.75rem -0.75rem;padding:0.75rem 0.75rem;text-align:inherit;line-height:${theme.sizes.base};border-radius:${theme.radius.base};&:hover{cursor:pointer;background-color:${theme.colors.secondary.blue.lightest};}`;\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport styled from 'styled-components';\nimport { theme } from '../../../theme';\nimport { CellButton } from './styled';\nimport { Cell } from '../styled';\nconst ClickableButton = styled(CellButton).withConfig({ displayName: \"vui--ClickableButton\", componentId: \"vui--1qfw372\" }) `color:${theme.text.link.color};text-decoration:${theme.text.link.textDecoration};`;\nexport const ClickableCell = (_a) => {\n var { onClick, children } = _a, otherProps = __rest(_a, [\"onClick\", \"children\"]);\n return (React.createElement(Cell, Object.assign({}, otherProps),\n React.createElement(ClickableButton, { onClick: onClick }, children)));\n};\n//# sourceMappingURL=ClickableCell.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport styled from 'styled-components';\nimport { CellButton } from './styled';\nimport { Cell } from '../styled';\nconst Content = styled.div.withConfig({ displayName: \"vui--Content\", componentId: \"vui--1fqu167\" }) `text-align:inherit;border-bottom:1px dotted black;`;\nexport const EditableCell = (_a) => {\n var { onClick, children } = _a, otherProps = __rest(_a, [\"onClick\", \"children\"]);\n return (React.createElement(Cell, Object.assign({}, otherProps),\n React.createElement(CellButton, { onClick: onClick },\n React.createElement(Content, null, children))));\n};\n//# sourceMappingURL=EditableCell.js.map","import React from 'react';\nimport styled from 'styled-components';\nimport { theme } from '../../../theme';\nconst { grey } = theme.colors.neutral;\nconst SkeletonContentWrapper = styled.div.withConfig({ displayName: \"vui--SkeletonContentWrapper\", componentId: \"vui--q4n9vc\" }) `height:16px;width:100%;`;\nconst SkeletonContentComponent = styled.div.withConfig({ displayName: \"vui--SkeletonContentComponent\", componentId: \"vui--yfc89o\" }) `display:inline-block;color:transparent;border-radius:4px;animation-duration:${({ isLoading = true }) => (isLoading ? '1s' : 0)};animation-fill-mode:forwards;animation-iteration-count:infinite;animation-name:placeHolderShimmer;animation-timing-function:linear;background:linear-gradient(to right, ${grey.base} 8%, ${grey.dark} 15%, ${grey.base} 33%);background-size:800px 104px;border:0;width:100%;height:100%;@keyframes placeHolderShimmer{0%{background-position:-380px 0;}100%{background-position:380px 0;}}`;\nexport const SkeletonContent = ({ isLoading, style }) => (React.createElement(SkeletonContentWrapper, { style: style },\n React.createElement(SkeletonContentComponent, { isLoading: isLoading })));\n//# sourceMappingURL=SkeletonContent.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { Cell } from '../styled';\nimport { SkeletonContent } from '../SkeletonContent';\nexport const SkeletonCell = (_a) => {\n var { style } = _a, otherProps = __rest(_a, [\"style\"]);\n return (React.createElement(Cell, Object.assign({}, otherProps),\n React.createElement(SkeletonContent, { style: style })));\n};\nSkeletonCell.defaultProps = {\n style: {},\n};\n//# sourceMappingURL=SkeletonCell.js.map","import { useCallback, useEffect, useState } from 'react';\nexport const useStickyHeader = (tableRef, topOffset) => {\n const [isSticky, setIsSticky] = useState(false);\n const handleScrollChange = useCallback(({ top, bottom }) => {\n let sticky = isSticky;\n if (top <= (topOffset || 0) && bottom > 0) {\n sticky = !isSticky ? true : sticky;\n }\n else {\n sticky = isSticky ? false : sticky;\n }\n if (sticky !== isSticky)\n setIsSticky(sticky);\n }, [isSticky, topOffset]);\n useEffect(() => {\n const onScroll = () => {\n var _a;\n if (tableRef.current) {\n handleScrollChange((_a = tableRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect());\n }\n };\n window.addEventListener('scroll', onScroll);\n return () => {\n window.removeEventListener('scroll', onScroll);\n };\n }, [handleScrollChange, tableRef]);\n return { isSticky };\n};\n//# sourceMappingURL=hooks.js.map","import React, { useState } from 'react';\nimport { useScroll } from 'react-use';\nimport { FakeHeaderTable, StickyHeaderWrapper } from './styled';\nimport { useStickyHeader } from './utils/hooks';\nexport const StickyHeader = ({ renderHeader, tableRef, wrapperRef, isFixedLayout, wrapperStyle, }) => {\n var _a;\n const [headerWrapperRef, setHeaderWrapperRef] = useState(null);\n const { isSticky } = useStickyHeader(tableRef, parseInt(typeof (wrapperStyle === null || wrapperStyle === void 0 ? void 0 : wrapperStyle.top) === 'string' ? wrapperStyle === null || wrapperStyle === void 0 ? void 0 : wrapperStyle.top : `${wrapperStyle === null || wrapperStyle === void 0 ? void 0 : wrapperStyle.top}`, 10));\n // here we use 2, because we also have borders on each side by 1 px\n const wrapperWidth = (((_a = wrapperRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect().width) || 0) - 2;\n // we use it just to re-render header to update scroll\n // so we don't need to get any value from this hook\n useScroll(wrapperRef);\n const updateScroll = (ref) => {\n var _a;\n const scrollLeft = ((_a = wrapperRef.current) === null || _a === void 0 ? void 0 : _a.scrollLeft) || 0;\n if (ref) {\n // eslint-disable-next-line no-param-reassign\n ref.scrollLeft = scrollLeft;\n return;\n }\n if (headerWrapperRef)\n headerWrapperRef.scrollLeft = scrollLeft;\n };\n updateScroll();\n return isSticky ? (React.createElement(StickyHeaderWrapper, { ref: (ref) => {\n setHeaderWrapperRef(ref);\n updateScroll(ref);\n }, style: Object.assign({ width: wrapperWidth }, wrapperStyle) },\n React.createElement(FakeHeaderTable, { style: { tableLayout: isFixedLayout ? 'fixed' : 'auto' } }, renderHeader()))) : null;\n};\n//# sourceMappingURL=StickyHeader.js.map","export const convertFixedColumnInlineStyleToStyled = (fixedColumnsStyle) => {\n const styles = [];\n fixedColumnsStyle.forEach(({ index, style }) => styles.push(`\n > td:${style.left !== undefined ? 'nth-child' : 'nth-last-child'}(${Math.abs(index)}) {\n position: sticky;\n ${style.left !== undefined ? 'left' : 'right'}: ${style.left !== undefined ? style.left : style.right}px;\n z-index: ${style.zIndex};\n }\n `));\n return styles.join('\\n\\n');\n};\n//# sourceMappingURL=index.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { HeaderCell } from '../styled';\nimport { SkeletonContent } from '../SkeletonContent';\nexport const SkeletonHeaderCell = (_a) => {\n var { style, width, isLoading } = _a, otherProps = __rest(_a, [\"style\", \"width\", \"isLoading\"]);\n return (React.createElement(HeaderCell, Object.assign({}, otherProps, { style: { width } }),\n React.createElement(SkeletonContent, { style: style, isLoading: isLoading })));\n};\n//# sourceMappingURL=SkeletonHeaderCell.js.map","import React from 'react';\nexport const DoubleArrowAscIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M5 10L8 13L11 10H5Z\", fill: \"#959FA8\" }),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M11 6L8 3L5 6L11 6Z\", fill: \"#0079D1\" })));\n//# sourceMappingURL=DoubleArrowAscIcon.js.map","import React from 'react';\nexport const DoubleArrowDescIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M5 10L8 13L11 10H5Z\", fill: \"#0079D1\" }),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M11 6L8 3L5 6L11 6Z\", fill: \"#959FA8\" })));\n//# sourceMappingURL=DoubleArrowDescIcon.js.map","import React, { useRef, useEffect, useState, useCallback, useMemo } from 'react';\nimport { Checkbox } from '../Checkbox';\nimport { Radio } from '../Radio';\nimport { Tooltip } from '../Tooltip';\nimport { theme } from '../../theme';\nimport { Wrapper, WrapperBordered, Table, Head, Body, Row, Cell, HeaderCell, HeaderCellLayout, Footer, TooltipContent, } from './styled';\nimport { SpecificState } from './SpecificState';\nimport { ClickableCell, EditableCell } from './cells';\nimport { SkeletonCell } from './cells/SkeletonCell';\nimport { defaultEmptyState, defaultErrorState, ScrollPosition } from './utils/constants';\nimport { StickyHeader } from './StickyHeader';\nimport { convertFixedColumnInlineStyleToStyled } from './utils';\nimport { SkeletonHeaderCell } from './cells/SkeletonHeaderCell';\nimport { SkeletonContent } from './SkeletonContent';\nimport { DoubleArrowIcon } from '../../tempIcons/DoubleArrowIconIcon';\nimport { DoubleArrowAscIcon } from '../../tempIcons/DoubleArrowAscIcon';\nimport { DoubleArrowDescIcon } from '../../tempIcons/DoubleArrowDescIcon';\nexport const IconUnsorted = () => (React.createElement(DoubleArrowIcon, { width: theme.sizes.base, height: theme.sizes.base, color: \"lightgrey\" }));\nexport const IconSortAsc = () => (React.createElement(DoubleArrowAscIcon, { width: theme.sizes.base, height: theme.sizes.base, color: \"lightgrey\" }));\nexport const IconSortDesc = () => (React.createElement(DoubleArrowDescIcon, { width: theme.sizes.base, height: theme.sizes.base, color: \"lightgrey\" }));\n/**\n * @deprecated\n *\n * Use DataTable instead\n */\nexport const LegacyDataTable = ({ borderless = false, striped = true, noWrap = false, showScrollbar = false, headers, rows, renderRow, renderNestedRow, expandedRowIds, renderLoadingRow, renderFooterRow, renderFooterLoadingRow, omitFooterSelectionCell = false, selectedRowIds, disabledSelectionInputRowIds, selectionMode = 'multiple', onChangeSelectedRowIds, sortColumnId, sortDirection, onChangeSort, isError = false, isLoading = false, skeletonRowsNumber = 5, isHeaderSticky = true, stickyHeaderStyle, customSpecificState, bodyHeightInSpecificStates = 375, startFixedColumnsNumber, endFixedColumnsNumber, }) => {\n const WrapperComponent = borderless ? Wrapper : WrapperBordered;\n const isEmpty = rows ? rows.length === 0 : false;\n const isFixedLayout = Boolean(startFixedColumnsNumber || endFixedColumnsNumber);\n const isFixedColumnsNotEnabled = !startFixedColumnsNumber && !endFixedColumnsNumber;\n const tableRef = useRef(null);\n const wrapperRef = useRef(null);\n const selectionColumnWidth = 58;\n const [scrollPosition, setScrollPosition] = useState(ScrollPosition.none);\n useEffect(() => {\n var _a;\n let refValue = null;\n const handleScroll = () => {\n if (!wrapperRef.current || isFixedColumnsNotEnabled)\n return;\n const el = wrapperRef.current;\n const scrollWidth = el.scrollWidth + 2; // 2 here is 2px which adds by border\n const { scrollLeft } = el;\n const { width } = el.getBoundingClientRect();\n const scrollValue = scrollLeft + width;\n if (scrollWidth === width)\n setScrollPosition(ScrollPosition.none);\n else if (scrollLeft === 0)\n setScrollPosition(ScrollPosition.start);\n else if (scrollLeft > 0 && scrollValue < scrollWidth)\n setScrollPosition(ScrollPosition.middle);\n else if (scrollValue === scrollWidth)\n setScrollPosition(ScrollPosition.end);\n };\n if (wrapperRef.current) {\n refValue = wrapperRef.current;\n handleScroll();\n (_a = wrapperRef.current) === null || _a === void 0 ? void 0 : _a.addEventListener('scroll', handleScroll);\n }\n return () => {\n refValue === null || refValue === void 0 ? void 0 : refValue.removeEventListener('scroll', handleScroll);\n };\n }, [tableRef, isFixedColumnsNotEnabled]);\n const castWidthToNumber = useCallback((width) => {\n if (typeof width === 'string') {\n // eslint-disable-next-line no-console\n console.error(\"You can only use a numeric value in the 'width' property when you use fixed columns\");\n return null;\n }\n if (width === undefined) {\n // eslint-disable-next-line no-console\n console.error(\"You should provide numeric value in the 'width' attribute in all fixed columns when you use fixed columns\");\n return null;\n }\n return width;\n }, []);\n const generateFixedColumnInlineStyle = useCallback((index, offset, side) => ({\n index: side === 'left' ? index : -index,\n style: {\n position: 'sticky',\n [side]: offset,\n zIndex: 1,\n },\n }), []);\n const generateFixedColumnsStyle = useCallback(() => {\n if (!headers || isLoading)\n return null;\n const startColumns = [];\n const endColumns = [];\n let totalStartOffset = 0;\n let totalEndOffset = 0;\n if (startFixedColumnsNumber) {\n if (selectedRowIds) {\n startColumns.push(generateFixedColumnInlineStyle(1, totalStartOffset, 'left'));\n totalStartOffset += selectionColumnWidth;\n }\n for (let i = 0; i < startFixedColumnsNumber; i += 1) {\n const headerWidth = castWidthToNumber(headers[i].width);\n if (headerWidth) {\n startColumns.push(generateFixedColumnInlineStyle(selectedRowIds ? i + 2 : i + 1, totalStartOffset, 'left'));\n totalStartOffset += headerWidth;\n }\n }\n }\n if (endFixedColumnsNumber) {\n for (let i = 0; i < endFixedColumnsNumber; i += 1) {\n const headerWidth = castWidthToNumber(headers.slice(-i - 1)[0].width);\n if (headerWidth) {\n endColumns.push(generateFixedColumnInlineStyle(i + 1, totalEndOffset, 'right'));\n totalEndOffset += headerWidth;\n }\n }\n }\n if (startColumns.length === 0 && endColumns.length === 0)\n return null;\n return [...startColumns, ...endColumns];\n }, [\n isLoading,\n castWidthToNumber,\n endFixedColumnsNumber,\n generateFixedColumnInlineStyle,\n headers,\n startFixedColumnsNumber,\n selectedRowIds,\n ]);\n const fixedColumnsStyle = useMemo(() => generateFixedColumnsStyle(), [generateFixedColumnsStyle]);\n const handleSelectRow = useCallback((checked, row) => {\n if (!selectedRowIds || !onChangeSelectedRowIds)\n return;\n if (checked) {\n if (selectionMode === 'single') {\n onChangeSelectedRowIds([row.id]);\n return;\n }\n onChangeSelectedRowIds([...selectedRowIds, row.id]);\n return;\n }\n const newSelectedRowIds = [...selectedRowIds];\n const index = newSelectedRowIds.findIndex((id) => id === row.id);\n newSelectedRowIds.splice(index, 1);\n onChangeSelectedRowIds(newSelectedRowIds);\n }, [onChangeSelectedRowIds, selectedRowIds, selectionMode]);\n const handleSelectAll = useCallback(() => {\n if (!selectedRowIds || !onChangeSelectedRowIds)\n return;\n if (selectedRowIds.length === rows.length) {\n onChangeSelectedRowIds([]);\n return;\n }\n const rowIds = rows.map((row) => row.id);\n onChangeSelectedRowIds(rowIds);\n }, [onChangeSelectedRowIds, rows, selectedRowIds]);\n const handleClickSortableHeader = useCallback((columnId) => {\n if (sortColumnId === undefined || onChangeSort === undefined)\n return;\n let nextColumnId = sortColumnId;\n let nextDirection = 'ascending';\n if (sortDirection === 'ascending') {\n nextDirection = 'descending';\n }\n if (columnId !== sortColumnId) {\n nextColumnId = columnId;\n nextDirection = 'ascending';\n }\n onChangeSort(nextColumnId, nextDirection);\n }, [onChangeSort, sortColumnId, sortDirection]);\n const renderHeaderCell = useCallback((header, style) => {\n let className = '';\n let onClick = () => { };\n let sortIcon = React.createElement(IconUnsorted, null);\n const { tooltip, align, icon, title, sortable, id } = header;\n if (sortable) {\n className = 'sortable';\n onClick = () => handleClickSortableHeader(id);\n if (sortColumnId === id) {\n sortIcon = sortDirection === 'ascending' ? React.createElement(IconSortAsc, null) : React.createElement(IconSortDesc, null);\n }\n }\n const headerContents = (React.createElement(HeaderCellLayout, { align: align },\n icon && icon,\n title && React.createElement(\"span\", null, title),\n sortable && sortIcon));\n return (React.createElement(HeaderCell, { key: id, id: `data-table-header-${id}`, className: className, onClick: onClick, align: header.align, grow: header.grow, style: Object.assign({ width: header.width || 'auto' }, style) }, tooltip ? (React.createElement(Tooltip, { text: tooltip },\n React.createElement(TooltipContent, null, headerContents))) : (headerContents)));\n }, [handleClickSortableHeader, sortColumnId, sortDirection]);\n const renderSkeletonHeaderCell = useCallback((header, style) => (React.createElement(SkeletonHeaderCell, { key: header.id, width: header.width || 'auto', style: style, isLoading: isLoading })), [isLoading]);\n const renderHeader = useCallback(() => {\n if (!headers)\n return null;\n const styles = generateFixedColumnsStyle();\n const selectionCellStyle = styles ? styles[0].style : {};\n return (React.createElement(Head, null,\n React.createElement(Row, null,\n selectedRowIds && (React.createElement(HeaderCell, { style: Object.assign({ width: selectionColumnWidth }, selectionCellStyle) }, selectionMode === 'multiple' && (React.createElement(Checkbox, { checked: (rows.length > 0 && (selectedRowIds === null || selectedRowIds === void 0 ? void 0 : selectedRowIds.length) === rows.length) || false, onChange: handleSelectAll, disabled: (disabledSelectionInputRowIds && disabledSelectionInputRowIds.length > 0) ||\n isLoading ||\n isEmpty, ariaLabel: \"Select all\" })))),\n headers.map((header, index) => {\n const startHeaderIndex = selectedRowIds ? index + 2 : index + 1;\n const endHeaderIndex = index - headers.length;\n const headerCellStyle = styles === null || styles === void 0 ? void 0 : styles.find((style) => style.index === startHeaderIndex || style.index === endHeaderIndex);\n return header.skeleton && (isLoading || isError || isEmpty)\n ? renderSkeletonHeaderCell(header, header.skeletonStyle || {})\n : renderHeaderCell(header, (headerCellStyle === null || headerCellStyle === void 0 ? void 0 : headerCellStyle.style) || {});\n }))));\n }, [\n generateFixedColumnsStyle,\n handleSelectAll,\n headers,\n isEmpty,\n isError,\n isLoading,\n renderSkeletonHeaderCell,\n renderHeaderCell,\n rows.length,\n selectedRowIds,\n selectionMode,\n disabledSelectionInputRowIds,\n ]);\n const renderSelectionInput = useCallback((isSelected, row) => {\n const inputProps = {\n checked: isSelected,\n onChange: (checked) => handleSelectRow(checked, row),\n disabled: (disabledSelectionInputRowIds === null || disabledSelectionInputRowIds === void 0 ? void 0 : disabledSelectionInputRowIds.includes(row.id)) || false,\n };\n if (selectionMode === 'single') {\n return React.createElement(Radio, Object.assign({}, inputProps));\n }\n return React.createElement(Checkbox, Object.assign({}, inputProps));\n }, [handleSelectRow, selectionMode, disabledSelectionInputRowIds]);\n const renderSkeletonSelectionInput = useCallback((rowIndex) => {\n const generalStyle = {\n width: 18,\n height: 18,\n margin: 3,\n animationDuration: '0s',\n };\n if (selectionMode === 'single') {\n return (React.createElement(SkeletonCell, { key: rowIndex === undefined ? null : `radio-skeleton-${rowIndex}`, style: Object.assign(Object.assign({}, generalStyle), { borderRadius: '50%' }) }));\n }\n return (React.createElement(SkeletonCell, { key: rowIndex === undefined ? null : `checkbox-skeleton-${rowIndex}`, style: Object.assign(Object.assign({}, generalStyle), { borderRadius: '0.25rem' }) }));\n }, [selectionMode]);\n const getNestedRow = useCallback((nestedRow, isHidden) => {\n var _a, _b;\n if (!renderNestedRow)\n return null;\n const content = renderNestedRow(nestedRow);\n if (!content)\n return null;\n const nestedRowE2eClassName = ((_b = (_a = nestedRow === null || nestedRow === void 0 ? void 0 : nestedRow.data) === null || _a === void 0 ? void 0 : _a.e2eClassNames) === null || _b === void 0 ? void 0 : _b.row) || '';\n return (React.createElement(Row, { key: nestedRow.id, className: `${nestedRowE2eClassName} ${isHidden ? 'hidden' : ''}` },\n selectedRowIds && React.createElement(Cell, null),\n content));\n }, [renderNestedRow, selectedRowIds]);\n const renderDefaultLoadingRow = useCallback((rowIndex) => {\n if (!headers)\n return React.createElement(SkeletonCell, null);\n // Otherwise render a cell for each column\n const cells = headers.map((header) => React.createElement(SkeletonCell, { key: `${rowIndex}-${header.id}` }));\n if (selectedRowIds)\n cells.unshift(renderSkeletonSelectionInput(rowIndex));\n return cells;\n }, [headers, renderSkeletonSelectionInput, selectedRowIds]);\n const getFooter = () => {\n if (!renderFooterRow)\n return null;\n if (isLoading && !renderFooterLoadingRow)\n return null;\n if (!isLoading && isEmpty)\n return null;\n return (React.createElement(Footer, { fixedColumnsStyle: convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || []) },\n React.createElement(Row, null,\n selectedRowIds && !omitFooterSelectionCell && React.createElement(Cell, null),\n !isLoading && renderFooterRow(rows),\n isLoading && renderFooterLoadingRow && renderFooterLoadingRow())));\n };\n let lastStartFixedColumnsIndex = startFixedColumnsNumber;\n if (selectedRowIds && lastStartFixedColumnsIndex)\n lastStartFixedColumnsIndex += 1;\n const renderedRows = useMemo(() => rows.map((row) => {\n var _a, _b, _c;\n const { data } = row;\n const isSelected = selectedRowIds ? selectedRowIds.includes(row.id) : false;\n const isExpanded = expandedRowIds ? expandedRowIds.includes(row.id) : true;\n const bodyClassName = (_a = data === null || data === void 0 ? void 0 : data.e2eClassNames) === null || _a === void 0 ? void 0 : _a.body;\n const rowE2eClassName = (_c = (_b = data === null || data === void 0 ? void 0 : data.e2eClassNames) === null || _b === void 0 ? void 0 : _b.row) !== null && _c !== void 0 ? _c : '';\n const rowClassName = isSelected ? `selected ${rowE2eClassName}` : `${rowE2eClassName}`;\n return (React.createElement(Body, { key: row.id, className: bodyClassName, fixedColumnsStyle: convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || []) },\n React.createElement(Row, { key: row.id, className: rowClassName, accentColor: row.accentColor },\n selectedRowIds && React.createElement(Cell, null, renderSelectionInput(isSelected, row)),\n renderRow(row)),\n row.nestedRows && row.nestedRows.map((item) => getNestedRow(item, !isExpanded))));\n }), [\n rows,\n expandedRowIds,\n fixedColumnsStyle,\n getNestedRow,\n renderRow,\n renderSelectionInput,\n selectedRowIds,\n ]);\n /* Loading state */\n if (isLoading) {\n const loadingRows = [];\n for (let i = 0; i < skeletonRowsNumber; i += 1) {\n loadingRows.push(React.createElement(Body, { key: `loading-row-${i}`, fixedColumnsStyle: convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || []) },\n React.createElement(Row, null, renderLoadingRow ? (React.createElement(React.Fragment, null,\n selectedRowIds && renderSkeletonSelectionInput(),\n renderLoadingRow())) : (renderDefaultLoadingRow(i)))));\n }\n return (React.createElement(WrapperComponent, { ref: wrapperRef, scrollDisabled: true, scrollPosition: scrollPosition, lastStartFixedColumnsIndex: lastStartFixedColumnsIndex, firstEndFixedColumnsIndex: endFixedColumnsNumber },\n isHeaderSticky && headers && (React.createElement(StickyHeader, { renderHeader: renderHeader, tableRef: tableRef, wrapperRef: wrapperRef, isFixedLayout: isFixedLayout, wrapperStyle: stickyHeaderStyle })),\n React.createElement(Table, { ref: tableRef, striped: striped, noWrap: noWrap, tableLoading: true, isFixedLayout: isFixedLayout },\n renderHeader(),\n loadingRows,\n getFooter())));\n }\n /* Empty & Error states */\n if (isEmpty || isError) {\n let specificStateValues = defaultEmptyState;\n if (customSpecificState)\n specificStateValues = customSpecificState;\n else if (isError)\n specificStateValues = defaultErrorState;\n return (React.createElement(WrapperComponent, { scrollDisabled: true },\n React.createElement(Table, { ref: tableRef, striped: striped, noWrap: noWrap, tableLoading: false, isFixedLayout: isFixedLayout },\n renderHeader(),\n getFooter()),\n React.createElement(SpecificState, Object.assign({ height: bodyHeightInSpecificStates }, specificStateValues))));\n }\n /* Populated state */\n return (React.createElement(WrapperComponent, { scrollDisabled: false, ref: wrapperRef, scrollPosition: scrollPosition, lastStartFixedColumnsIndex: lastStartFixedColumnsIndex, firstEndFixedColumnsIndex: endFixedColumnsNumber, showScrollbar: showScrollbar },\n isHeaderSticky && headers && (React.createElement(StickyHeader, { renderHeader: renderHeader, tableRef: tableRef, wrapperRef: wrapperRef, isFixedLayout: isFixedLayout, wrapperStyle: stickyHeaderStyle })),\n React.createElement(Table, { ref: tableRef, striped: striped, noWrap: noWrap, tableLoading: false, isFixedLayout: isFixedLayout },\n renderHeader(),\n renderedRows,\n getFooter())));\n};\nLegacyDataTable.Cell = Cell;\nLegacyDataTable.ClickableCell = ClickableCell;\nLegacyDataTable.EditableCell = EditableCell;\nLegacyDataTable.SkeletonCell = SkeletonCell;\nLegacyDataTable.SkeletonContent = SkeletonContent;\n//# sourceMappingURL=LegacyDataTable.js.map","import styled from 'styled-components';\nexport const LoginButton = styled.button.withConfig({ displayName: \"vui--LoginButton\", componentId: \"vui--wl2n5a\" }) `background:none;border:none;padding:0;cursor:pointer;img{width:156px;height:32px;}`;\n//# sourceMappingURL=styled.js.map","import React, { useState } from 'react';\nimport { LoginButton } from './styled';\nconst buttonImg = 'https://images-na.ssl-images-amazon.com/images/G/01/lwa/btnLWA_gold_312x64.png';\nconst buttonPressedImg = 'https://images-na.ssl-images-amazon.com/images/G/01/lwa/btnLWA_gold_312x64_pressed.png';\nexport const buttonDescription = 'Log in with Amazon';\n/**\n * Image used in this button is to comply with official\n * Amazon button guidelines (https://developer.amazon.com/docs/login-with-amazon/button.html#android-images).\n */\nexport const LoginWithAmazonButton = (props) => {\n const [image, setImage] = useState(buttonImg);\n const handleMouseDown = () => {\n setImage(buttonPressedImg);\n };\n const handleMouseUp = () => {\n setImage(buttonImg);\n };\n return (React.createElement(LoginButton, Object.assign({ onMouseDown: handleMouseDown, onMouseUp: handleMouseUp, \"aria-label\": buttonDescription }, props),\n React.createElement(\"img\", { src: image, alt: buttonDescription })));\n};\n//# sourceMappingURL=LoginWithAmazonButton.js.map","import styled, { createGlobalStyle } from 'styled-components';\nimport { Card } from '../../Card';\nimport { theme } from '../../../theme';\nexport const NonScrollableBody = createGlobalStyle `body{overflow:hidden;scrollbar-gutter:stable;}`;\nexport const MainSection = styled.section.withConfig({ displayName: \"vui--MainSection\", componentId: \"vui--or7d\" }) `flex:1;overflow-y:auto;${({ fullBleed }) => !fullBleed && `padding: 0 ${theme.sizes.md};`} ${({ isScrollable }) => isScrollable &&\n `\n & + ${Card.Footer} {\n box-shadow: 0px 10px 15px 0px ${theme.colors.neutral.ink.dark};\n }\n `}`;\n//# sourceMappingURL=styled.js.map","/**\n * Type guard to check if a header slot has been passed to the component.\n */\nexport const hasHeaderSlot = (props) => {\n return !!props.headerSlot;\n};\n/**\n * Type guard to check if a footer slot has been passed to the component.\n */\nexport const hasFooterSlot = (props) => {\n return !!props.footerSlot;\n};\n//# sourceMappingURL=types.js.map","import { breakpoints } from '../../../../theme/modules/breakpoints';\nexport const heightMap = {\n xs: '84vh',\n sm: '72vh',\n base: '84vh',\n lg: '96vh',\n};\nexport const widthMap = {\n [breakpoints.mobile]: {\n xs: '60vw',\n sm: '72vw',\n base: '100vw',\n lg: '100vw',\n },\n [breakpoints.tablet]: {\n xs: '60vw',\n sm: '72vw',\n base: '100vw',\n lg: '100vw',\n },\n [breakpoints.lgTablet]: {\n xs: '48vw',\n sm: '56vw',\n base: '88vw',\n lg: '100vw',\n },\n [breakpoints.desktop]: {\n xs: '36vw',\n sm: '44vw',\n base: '72vw',\n lg: '88vw',\n },\n [breakpoints.lgDesktop]: {\n xs: '32vw',\n sm: '40vw',\n base: '52vw',\n lg: '80vw',\n },\n};\nexport const fullScreenBreakpointMap = {\n xs: breakpoints.mobile,\n sm: breakpoints.mobile,\n base: breakpoints.tablet,\n lg: breakpoints.lgTablet,\n};\n//# sourceMappingURL=constants.js.map","import styled from 'styled-components';\nimport { motion } from 'framer-motion';\nimport { getOpaqueHexColor } from '../../../../utils/color';\nimport { Card } from '../../../Card';\nimport { theme } from '../../../../theme';\nimport { fullScreenBreakpointMap, heightMap, widthMap } from './constants';\nimport { MainSection } from '../styled';\nconst { breakpoints } = theme;\nexport const StyledDialog = styled(motion.dialog).attrs({\n initial: { opacity: 0, y: -50, bounce: 0 },\n exit: { opacity: 0, y: -50, bounce: 0 },\n animate: { opacity: 1, y: 0, bounce: 0 },\n transition: { type: 'tween', duration: 0.25 },\n}).withConfig({ displayName: \"vui--StyledDialog\", componentId: \"vui--hfuefb\" }) `padding:0;border:none;border-radius:${theme.sizes.sm};box-shadow:${theme.shadows.lg};min-width:464px;&::backdrop{animation:fadeIn 0.25s ease forwards;}& > ${Card.Surface}{display:flex;flex-direction:column;${({ variant }) => `max-height: ${heightMap[variant]};`} ${MainSection}{padding-bottom:${theme.sizes.md};}${Card.Footer}{margin-top:0;}}@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}@media (min-width: calc(${breakpoints.mobile} + 1px))and (max-width: ${breakpoints.tablet}){max-width:${({ variant }) => widthMap[breakpoints.tablet][variant]};}@media (min-width: ${breakpoints.tablet})and (max-width: ${breakpoints.lgTablet}){max-width:${({ variant }) => widthMap[breakpoints.lgTablet][variant]};}@media (min-width: ${breakpoints.lgTablet})and (max-width: ${breakpoints.desktop}){max-width:${({ variant }) => widthMap[breakpoints.desktop][variant]};}@media (min-width: ${breakpoints.desktop}){max-width:${({ variant }) => widthMap[breakpoints.lgDesktop][variant]};}@media (max-width: ${({ variant }) => fullScreenBreakpointMap[variant]}){margin:0;width:100%;max-width:100vw;max-height:100vh;&,& > ${Card.Surface}{border-radius:0;height:100%;width:100%;max-height:unset;}}&::backdrop{background-color:${getOpaqueHexColor(theme.colors.neutral.ink.base, 0.5)};}&:not([open]){display:block;position:fixed;top:0;left:0;right:0;bottom:0;transform:translate(-50%, -50%);}`;\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { StyledDialog } from './styled';\nexport const Dialog = React.forwardRef((_a, ref) => {\n var rest = __rest(_a, []);\n return React.createElement(StyledDialog, Object.assign({ ref: ref }, rest));\n});\n//# sourceMappingURL=Dialog.js.map","import styled from 'styled-components';\nimport { Button } from '../Button';\nimport { theme } from '../../theme';\nconst { sizes, text, shadows } = theme;\nconst { grey } = theme.colors.neutral;\nexport const Header = styled.header.withConfig({ displayName: \"vui--Header\", componentId: \"vui--q2h2v8\" }) `padding:${sizes.base} ${sizes.md};background-color:white;box-shadow:${({ shadow }) => shadow !== 'none' && shadows[shadow]};`;\nexport const Title = styled.h1.withConfig({ displayName: \"vui--Title\", componentId: \"vui--7ymyy4\" }) `font-family:${text.headingXL.fontFamily};font-size:${text.headingXL.fontSize};font-weight:${text.headingXL.fontWeight};margin:unset;line-height:1;`;\nexport const Subtitle = styled.p.withConfig({ displayName: \"vui--Subtitle\", componentId: \"vui--1veavxl\" }) `margin:0.75rem 0 0;font-family:${text.subheadingLarge.fontFamily};font-weight:${text.subheadingLarge.fontWeight};font-size:${text.subheadingLarge.fontSize};line-height:${text.subheadingLarge.lineHeight};`;\nexport const Image = styled.img.withConfig({ displayName: \"vui--Image\", componentId: \"vui--1fntac3\" }) `border-radius:${theme.radius.base};border:${sizes.line} solid ${grey.base};object-fit:cover;`;\nexport const ActionsContainer = styled.div.withConfig({ displayName: \"vui--ActionsContainer\", componentId: \"vui--4ms240\" }) `height:100%;display:grid;grid-template-rows:1fr auto;gap:1rem;`;\nexport const SidebarToggleButton = styled(Button).attrs({ variant: 'unstyled' }).withConfig({ displayName: \"vui--SidebarToggleButton\", componentId: \"vui--1e4sfso\" }) `display:flex;align-items:center;font-family:${theme.text.link.fontFamily};font-size:${theme.text.link.fontSize};font-weight:${theme.text.link.fontWeight};line-height:${theme.text.link.lineHeight};color:${theme.text.link.color};&:hover{text-decoration:${theme.text.link.textDecoration};}& > * + *{margin-left:${theme.sizes.xs};}`;\nexport const ColumnGrid = styled.div.withConfig({ displayName: \"vui--ColumnGrid\", componentId: \"vui--498dtg\" }) `width:100%;display:grid;grid-template-columns:1fr minmax(312px, auto);align-items:flex-start;grid-gap:${sizes.md};transition:all 0.2s ease-in-out;& > *:nth-child(2){opacity:${({ showSidebar = true }) => (showSidebar ? '1.0' : '0')};transition:opacity 0.2s;}`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nexport const LeftArrowIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M10.44 11.06L7.38667 8L10.44 4.94L9.5 4L5.5 8L9.5 12L10.44 11.06Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=LeftArrowIcon.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nimport { Stack } from '../Stack';\nimport { Button } from '../Button';\nimport { TextField } from '../TextField';\nexport const PageLimitContainer = styled(Stack).withConfig({ displayName: \"vui--PageLimitContainer\", componentId: \"vui--1psd9g8\" }) `width:${theme.sizes.lg};height:30px;background-color:${theme.colors.neutral.grey.light};border:1px solid ${theme.colors.neutral.grey.base};border-radius:${theme.sizes.xs};`;\nexport const PaginationButton = styled(Button).withConfig({ displayName: \"vui--PaginationButton\", componentId: \"vui--oolvks\" }) `color:${theme.colors.neutral.ink.base};width:32px;height:32px;svg{width:24px;height:24px;}`;\nexport const PageInput = styled(TextField).withConfig({ displayName: \"vui--PageInput\", componentId: \"vui--jjraff\" }) `&[type='number']{width:5.5ch;}`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nimport { Text } from '../Text';\nimport { PageLimitContainer } from './styled';\nexport const PageCount = ({ count }) => (React.createElement(React.Fragment, null,\n React.createElement(\"div\", null,\n React.createElement(Text, { variant: \"bodySmall\", \"aria-hidden\": true }, \"/\")),\n React.createElement(PageLimitContainer, { alignX: \"center\", alignY: \"center\", \"aria-hidden\": true },\n React.createElement(Text, { variant: \"bodySmall\" }, count))));\n//# sourceMappingURL=components.js.map","import { useEffect, useState } from 'react';\n/**\n * A hook to handle pagination state.\n */\nexport const usePagination = ({ currentPage, totalPagesCount, handleChangePage, }) => {\n const [pageInputValue, setPageInputValue] = useState(`${currentPage}`);\n /**\n * When a new value is passed into the component we update the local state, meaning the input\n * value gets updated.\n */\n useEffect(() => {\n setPageInputValue(`${currentPage}`);\n }, [currentPage]);\n const validatePageValue = (value) => value >= 1 && value <= totalPagesCount;\n const checkAndSetLocalPage = (newPage) => {\n if (validatePageValue(newPage))\n setPageInputValue(`${newPage}`);\n };\n /**\n * A function to handle changes to the input, a string will be passed int. We check for an empty\n * string and directly set that, otherwise we validate the input number is within range.\n * @param newValue The new string input value.\n */\n const handleInputChange = (newValue) => {\n if (!newValue)\n setPageInputValue(newValue);\n const intValue = parseInt(newValue, 10);\n checkAndSetLocalPage(intValue);\n };\n /**\n * A function to increment the current page, using callback from props. Local state will update\n * when a new `currentPage` is passed.\n */\n const handleIncrement = () => {\n if (validatePageValue(currentPage + 1))\n handleChangePage(currentPage + 1);\n };\n /**\n * A function to decrement the current page, using callback from props. Local state will update\n * when a new `currentPage` is passed.\n */\n const handleDecrement = () => {\n if (validatePageValue(currentPage - 1))\n handleChangePage(currentPage - 1);\n };\n /**\n * When the input is unfocussed we want to update parent or local state depending on 3 cases:\n * 1. Local page input is '', reset it to the currentPage\n * 2. Local page input is the same as passed by prop, catch and do nothing.\n * 3. Local state has a new value, convert it, validate it and potentially send to parent via\n * `handlePageChange`\n */\n const handleSubmit = () => {\n if (!pageInputValue)\n setPageInputValue(`${currentPage}`);\n if (pageInputValue === `${currentPage}`)\n return;\n const newValue = parseInt(pageInputValue, 10);\n if (validatePageValue(newValue))\n handleChangePage(newValue);\n };\n /**\n * When the user submits the form, either pressing enter or a screenreader shortcut we prevent\n * default action and try and send update.\n * @param event The event fired from the form when submitting.\n */\n const handleFormSubmit = (event) => {\n event.preventDefault();\n handleSubmit();\n };\n return {\n pageInputValue,\n handleIncrement,\n handleDecrement,\n handleInputChange,\n handleSubmit,\n handleFormSubmit,\n };\n};\n//# sourceMappingURL=usePagination.js.map","import React from 'react';\nexport const StartArrowIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { d: \"M11.6434 11.06L8.59004 8L11.6434 4.94L10.7034 4L6.70337 8L10.7034 12L11.6434 11.06Z\", fill: \"currentColor\" }),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M4.37004 12L4.37004 4L5.70337 4L5.70337 12L4.37004 12Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=StartArrowIcon.js.map","import React from 'react';\nexport const EndArrowIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M4.33661 11.06L7.38994 8L4.33661 4.94L5.27661 4L9.27661 8L5.27661 12L4.33661 11.06Z\", fill: \"currentColor\" }),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M11.67 4L11.67 12L10.3367 12L10.3367 4L11.67 4Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=EndArrowIcon.js.map","export const paginationDefaultRangeList = [\n { label: '10 / page', value: 10 },\n { label: '25 / page', value: 25 },\n { label: '50 / page', value: 50 },\n { label: '100 / page', value: 100 },\n];\n//# sourceMappingURL=paginationList.js.map","import styled from 'styled-components';\nimport { AnimatedDropdown } from '../AnimatedDropdown';\nimport { Text } from '../Text';\nimport { BaseContainer } from '../BaseContainer';\nimport { colors } from '../../theme/modules/colors';\nconst Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--1t222e4\" }) `display:flex;flex-direction:row;justify-content:flex-start;align-items:center;`;\nconst Dropdown = styled(AnimatedDropdown).withConfig({ displayName: \"vui--Dropdown\", componentId: \"vui--6y6o6p\" }) `&-container{width:100%;}`;\nconst Button = styled.button.withConfig({ displayName: \"vui--Button\", componentId: \"vui--6l6anz\" }) `width:100%;height:32px;padding:6px 8px 8px 8px;display:flex;border:1px solid ${colors.neutral.grey.base};box-sizing:border-box;border-radius:4px;justify-content:space-between;background:white;cursor:pointer;svg{padding-left:8px;padding-top:2px;}`;\nexport { Container, Dropdown, Button, Text };\n//# sourceMappingURL=styled.js.map","import styled from 'styled-components';\nimport { colors } from '../../../../theme/modules/colors';\nimport { Text } from '../../../Text';\nimport { BaseContainer } from '../../../BaseContainer';\nconst Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--33jbzi\" }) `display:flex;flex-direction:row;justify-content:flex-start;align-items:center;`;\nconst StyledText = styled(Text).withConfig({ displayName: \"vui--StyledText\", componentId: \"vui--1oky5qu\" }) `width:100%;padding:8px 16px;cursor:pointer;&:hover{color:${colors.secondary.blue.base};background:${colors.neutral.grey.lightest};}`;\nexport { StyledText as Text, Container };\n//# sourceMappingURL=styled.js.map","import React, { useCallback } from 'react';\nimport { Container, Text } from './styled';\nexport const Item = ({ item, handleRangeListChange }) => {\n const onClick = useCallback(() => handleRangeListChange(item), [handleRangeListChange, item]);\n return (React.createElement(Container, { onClick: onClick },\n React.createElement(Text, { variant: \"bodySmall\" }, item.label)));\n};\n//# sourceMappingURL=Item.js.map","import React, { Fragment } from 'react';\nimport { paginationDefaultRangeList } from '../../../utils/paginationList';\nimport { Item } from './Item';\nexport const Items = (props) => {\n const { handleRangeListChange, paginationRange = paginationDefaultRangeList } = props;\n return (React.createElement(React.Fragment, null, paginationRange.map((item) => (React.createElement(Fragment, { key: item.label },\n React.createElement(Item, { item: item, handleRangeListChange: handleRangeListChange }))))));\n};\n//# sourceMappingURL=Items.js.map","import React, { Component } from 'react';\nimport { paginationDefaultRangeList } from '../../utils/paginationList';\nimport { theme } from '../../theme';\nimport { Container, Dropdown, Button, Text } from './styled';\nimport { Items } from './Items';\nimport { DropdownIcon } from '../../tempIcons/DropdownIcon';\nexport class PaginationRange extends Component {\n constructor(props) {\n super(props);\n this.handleRangeListChange = (item) => {\n const { onPaginationRangeChange } = this.props;\n this.setDropdownValue(item);\n onPaginationRangeChange(item);\n };\n this.setDropdownValue = (currentValue) => this.setState({\n shouldShowDropdown: false,\n dropdownValue: currentValue,\n });\n this.toggleShouldShow = () => {\n const { shouldShowDropdown } = this.state;\n this.setState({ shouldShowDropdown: !shouldShowDropdown });\n };\n const { dropdownValue = paginationDefaultRangeList[1] } = this.props;\n this.state = {\n dropdownValue,\n shouldShowDropdown: false,\n };\n }\n render() {\n const { className, paginationRange = paginationDefaultRangeList, reversedDropdown, } = this.props;\n const { shouldShowDropdown, dropdownValue } = this.state;\n return (React.createElement(Container, { className: className },\n React.createElement(Dropdown, { cta: React.createElement(Button, { onClick: this.toggleShouldShow },\n React.createElement(Text, { variant: \"bodySmall\" }, dropdownValue.label),\n React.createElement(DropdownIcon, { color: theme.colors.neutral.ink.base })), shouldShowDropdown: shouldShowDropdown, onClickAway: this.toggleShouldShow, reversed: reversedDropdown },\n React.createElement(Items, { paginationRange: paginationRange, handleRangeListChange: this.handleRangeListChange }))));\n }\n}\n//# sourceMappingURL=PaginationRange.js.map","import styled from 'styled-components';\nexport const Container = styled.div.withConfig({ displayName: \"vui--Container\", componentId: \"vui--1kqph75\" }) `box-sizing:border-box;display:inline-flex;flex-direction:column;height:${({ size }) => (size === 'sm' ? '32px' : '40px')};border-radius:4px;${({ size }) => size === 'sm'\n ? `svg { width: 14px !important; height: 14px !important; };\n\n > button { padding: 0 6px };`\n : ''};& > *:first-child{border-bottom-width:0;}& > *:active,& > *:focus{border-width:1px;}& > *:active + *,& > *:focus + *{border-top-width:0;}& > *:focus,& > *:active{z-index:5;}& > *:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit;}& > *:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;}`;\nexport const StepButton = styled.button.withConfig({ displayName: \"vui--StepButton\", componentId: \"vui--1myicuk\" }) `appearance:none;flex:1;border:0;display:flex;justify-content:center;align-items:center;padding:0 8px;background-color:white;border:1px solid #959fa8;&:hover{cursor:pointer;background-color:#fafafb;}&:active:not(:disabled){background-color:#fafafb;border-color:#0079d1;box-shadow:0 0 0 4px #80bce8;}&:focus{box-shadow:0 0 0 4px #80bce8;outline:0;}&:disabled{background-color:#f2f3f5;border-color:#959fa8;color:#637381;cursor:not-allowed;}`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nimport { theme } from '../../theme';\nimport { Container, StepButton } from './styled';\nimport { DownArrowIcon } from '../../tempIcons/DownArrowIcon';\nimport { UpArrowIcon } from '../../tempIcons/UpArrowIcon';\nexport const Stepper = ({ onIncrement, onDecrement, disabled = false, size }) => (React.createElement(Container, { size: size },\n React.createElement(StepButton, { type: \"button\", onClick: onIncrement, disabled: disabled },\n React.createElement(UpArrowIcon, { height: theme.sizes.base, width: theme.sizes.base, color: theme.colors.neutral.ink.base })),\n React.createElement(StepButton, { type: \"button\", onClick: onDecrement, disabled: disabled },\n React.createElement(DownArrowIcon, { height: theme.sizes.base, width: theme.sizes.base, color: theme.colors.neutral.ink.base }))));\n//# sourceMappingURL=Stepper.js.map","import styled from 'styled-components';\nimport { TextField } from '../TextField';\nimport { BaseContainer } from '../BaseContainer';\nimport { Text } from '../Text';\nimport { InputGroup } from '../InputGroup';\nimport { theme } from '../../theme';\nexport const StyledTextField = styled(TextField).withConfig({ displayName: \"vui--StyledTextField\", componentId: \"vui--bdxre8\" }) `color:${theme.colors.neutral.ink.dark};width:100%;&:focus{box-shadow:none;border-color:none;border-right-width:0;border-color:${theme.colors.neutral.ink.lightest};}`;\nexport const PrefixContainer = styled(BaseContainer).withConfig({ displayName: \"vui--PrefixContainer\", componentId: \"vui--1pz53n4\" }) `user-select:none;border:1px solid ${theme.colors.neutral.ink.lightest};border-radius:4px;display:flex;align-items:center;justify-content:center;width:${({ size }) => (size === 'sm' ? '30px' : '36px')};background-color:${({ disabled }) => (disabled ? theme.colors.neutral.grey.light : 'white')};flex-shrink:0;${({ size }) => (size === 'sm' ? '> span { font-size: 12px }' : '')};&:active{z-index:0;border-right-width:0;+ input{z-index:0;border-left-width:1px;}}`;\nexport const PrefixText = styled(Text).withConfig({ displayName: \"vui--PrefixText\", componentId: \"vui--1n3xr2g\" }) `font-size:14px;`;\nexport const PriceInputGroup = styled(InputGroup).withConfig({ displayName: \"vui--PriceInputGroup\", componentId: \"vui--1sahwox\" }) `display:inline-flex;border-radius:4px;min-width:125px;width:100%;${({ hasError }) => hasError &&\n `\n box-shadow: 0 0 0 4px ${theme.colors.secondary.red.light};\n\n > * {\n border-top-color: ${theme.colors.secondary.red.base};\n border-bottom-color: ${theme.colors.secondary.red.base};\n }\n\n > *:first-child {\n border-left-color: ${theme.colors.secondary.red.base};\n }\n\n > div:last-child {\n > button:first-child {\n border-top-color: ${theme.colors.secondary.red.base};\n border-right-color: ${theme.colors.secondary.red.base};\n }\n\n > button:last-child {\n border-right-color: ${theme.colors.secondary.red.base};\n border-bottom-color: ${theme.colors.secondary.red.base};\n }\n }\n `} &:focus-within{outline:0;box-shadow:${({ hasError }) => hasError ? '' : `0 0 0 4px ${theme.colors.secondary.blue.light}`};}&:focus-within > *{border-top-color:${({ hasError }) => hasError ? theme.colors.secondary.red.base : theme.colors.secondary.blue.base};border-bottom-color:${({ hasError }) => hasError ? theme.colors.secondary.red.base : theme.colors.secondary.blue.base};}&:focus-within > *:first-child{border-left-color:${({ hasError }) => hasError ? theme.colors.secondary.red.base : theme.colors.secondary.blue.base};}&:focus-within > div:last-child{> button:first-child{border-top-color:${({ hasError }) => hasError ? theme.colors.secondary.red.base : theme.colors.secondary.blue.base};border-right-color:${({ hasError }) => hasError ? theme.colors.secondary.red.base : theme.colors.secondary.blue.base};}> button:last-child{border-right-color:${({ hasError }) => hasError ? theme.colors.secondary.red.base : theme.colors.secondary.blue.base};border-bottom-color:${({ hasError }) => hasError ? theme.colors.secondary.red.base : theme.colors.secondary.blue.base};}}`;\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { ComponentSize } from '../types';\nimport { Stepper } from '../Stepper';\nimport { PriceInputGroup, StyledTextField, PrefixContainer, PrefixText } from './styled';\nimport { withLabels } from '../../hoc';\nconst fractionDigits = 2;\nfunction stringToFixed(price) {\n const floatPrice = parseFloat(price.replace(',', '.'));\n return floatPrice.toFixed(fractionDigits);\n}\nexport const PriceInput = withLabels((_a) => {\n var { className = '', hasError, currency, disabled = false, onChange, onPriceChange, priceValue, step = '0.1', size = ComponentSize.base } = _a, otherProps = __rest(_a, [\"className\", \"hasError\", \"currency\", \"disabled\", \"onChange\", \"onPriceChange\", \"priceValue\", \"step\", \"size\"]);\n const handleChange = (value) => onChange(value.replace(/[a-zA-Z]/g, '').replace(',', '.'));\n const handleBlur = (e) => {\n const target = e.target;\n const { value } = target;\n if (!value) {\n onPriceChange('');\n return;\n }\n const roundedValue = stringToFixed(value);\n onPriceChange(roundedValue);\n };\n const handleIncrement = (callback = onPriceChange) => {\n const currentPrice = parseFloat(priceValue) || 0;\n const currentStep = parseFloat(step);\n callback((currentPrice + currentStep).toFixed(fractionDigits));\n };\n const handleDecrement = (callback = onPriceChange) => {\n const currentPrice = parseFloat(priceValue) || 0;\n const currentStep = parseFloat(step);\n callback((currentPrice - currentStep).toFixed(fractionDigits));\n };\n const handleKeyDown = (e) => {\n const { key } = e;\n const target = e.target;\n const isInForm = target.form;\n if (!isInForm) {\n if (key === 'Enter')\n target.blur();\n }\n if (key === 'ArrowUp')\n handleIncrement(onChange);\n if (key === 'ArrowDown')\n handleDecrement(onChange);\n };\n return (React.createElement(PriceInputGroup, { className: className, hasError: hasError },\n React.createElement(PrefixContainer, { disabled: disabled, size: size },\n React.createElement(PrefixText, { variant: \"hintText\" }, currency)),\n React.createElement(StyledTextField, Object.assign({ placeholder: \"0.00\", type: \"currency\", value: priceValue, step: step, onChange: handleChange, onBlur: handleBlur, onKeyDown: handleKeyDown, disabled: disabled, size: size }, otherProps)),\n React.createElement(Stepper, { onIncrement: () => handleIncrement(), onDecrement: () => handleDecrement(), disabled: disabled, size: size })));\n});\nPriceInput.displayName = 'PriceInput';\n//# sourceMappingURL=PriceInput.js.map","import styled from 'styled-components';\nimport { TextField } from '../TextField';\nimport { BaseContainer } from '../BaseContainer';\nimport { Loader } from '../Loader';\nconst Input = styled(TextField).withConfig({ displayName: \"vui--Input\", componentId: \"vui--1jvzatv\" }) `flex-grow:2;margin-top:0;margin-bottom:0;`;\nconst IconContainer = styled.div.withConfig({ displayName: \"vui--IconContainer\", componentId: \"vui--12eib7v\" }) `position:absolute;`;\nconst Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--g7dno3\" }) `position:relative;display:flex;justify-content:flex-start;align-items:center;border-radius:0.25rem;${({ iconPosition }) => {\n let padding = 'padding-right: 2.5rem;';\n let position = 'right: 0.5rem;';\n if (iconPosition === 'left') {\n padding = 'padding-left: 2.5rem';\n position = 'left: 0.5rem;';\n }\n return `\n & ${Input} {\n ${padding}\n }\n\n & ${IconContainer} {\n ${position}\n }\n `;\n}}`;\nexport { Container, Input, IconContainer, Loader };\n//# sourceMappingURL=styled.js.map","import React from 'react';\nexport const SearchIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M14.3819 13.6918H15.1498L20 18.5517L18.5517 20L13.6918 15.1498V14.3819L13.4294 14.1098C12.3213 15.0623 10.8828 15.6358 9.3179 15.6358C5.82847 15.6358 3 12.8073 3 9.3179C3 5.82847 5.82847 3 9.3179 3C12.8073 3 15.6358 5.82847 15.6358 9.3179C15.6358 10.8828 15.0623 12.3213 14.1098 13.4294L14.3819 13.6918ZM4.94397 9.3179C4.94397 11.7381 6.89766 13.6918 9.3179 13.6918C11.7381 13.6918 13.6918 11.7381 13.6918 9.3179C13.6918 6.89766 11.7381 4.94397 9.3179 4.94397C6.89766 4.94397 4.94397 6.89766 4.94397 9.3179Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=SearchIcon.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nimport { BaseContainer } from '../BaseContainer';\nconst buttonBackgroundColor = theme.colors.neutral.grey.lightest;\nconst buttonBorderColor = theme.colors.neutral.grey.dark;\nconst activeButtonColor = theme.colors.secondary.blue.dark;\nexport const SegmentedControlContainer = styled(BaseContainer).withConfig({ displayName: \"vui--SegmentedControlContainer\", componentId: \"vui--mxpi9o\" }) `display:flex;flex-direction:row;> button{border-radius:0;box-shadow:none;:focus,:active{background-color:${buttonBackgroundColor};border-color:${buttonBorderColor};box-shadow:none;}}> .veeqo-components-active-button{:focus,:active{background-color:${activeButtonColor};border-color:${activeButtonColor};}}> button:not(:first-child){border-left:none;}> .veeqo-components-active-button + button{border-left:1px solid ${theme.colors.neutral.grey.dark};}> button:first-child{border-radius:20px 0px 0px 20px;}> button:last-child{border-radius:0px 20px 20px 0px;}`;\n//# sourceMappingURL=styled.js.map","import styled from 'styled-components';\nexport const SelectInput = styled.select.withConfig({ displayName: \"vui--SelectInput\", componentId: \"vui--1h93380\" }) `box-sizing:border-box;appearance:none;display:flex;align-items:center;justify-content:center;padding:0 2.5rem 0 0.5rem;border-radius:4px;background-color:white;border:1px solid #959fa8;color:#1b2126;background-image:url(\"data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M4 6L8 10L12 6H4Z' fill='currentColor' /%3E%3C/svg%3E\");background-repeat:no-repeat;background-position:right 0.5em top 50%,0 0;${({ sizeVariant }) => {\n let height = '40px';\n let fontSize = '14px';\n if (sizeVariant === 'sm') {\n height = '32px';\n fontSize = '12px';\n }\n return `\n height: ${height};\n font-size: ${fontSize};\n `;\n}} &:focus{border-color:#0079d1;box-shadow:0 0 0 4px #80bce8;outline:0;}&:invalid{border-color:#eb5757;box-shadow:0 0 0 4px #f7bcbc;outline:0;}&:disabled{box-shadow:none;background-color:#f2f3f5;border-color:#959fa8;color:#637381;}`;\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React, { forwardRef, useCallback } from 'react';\nimport { SelectInput } from './styled';\nimport { withLabels } from '../../hoc';\nexport const Select = withLabels(forwardRef((_a, ref) => {\n var { className, options, value, onChange, size, disabled, hasError } = _a, otherProps = __rest(_a, [\"className\", \"options\", \"value\", \"onChange\", \"size\", \"disabled\", \"hasError\"]);\n const handleChange = useCallback((e) => {\n if (!onChange)\n return;\n onChange(e.currentTarget.value);\n }, [onChange]);\n return (React.createElement(SelectInput, Object.assign({ className: className, sizeVariant: size, value: value !== null && value !== void 0 ? value : undefined, onChange: handleChange, disabled: disabled, hasError: hasError, ref: ref }, otherProps), !!options &&\n options.map((option) => (React.createElement(\"option\", { key: option.label, value: option.value, disabled: option.disabled }, option.label)))));\n}));\nSelect.displayName = 'Select';\n//# sourceMappingURL=Select.js.map","import styled from 'styled-components';\nimport { sizes } from '../../theme/modules/sizes';\nimport { text } from '../../theme/modules/text';\nimport { colors } from '../../theme/modules/colors';\nconst { blue } = colors.secondary;\nconst { grey } = colors.neutral;\nexport const TableHeader = styled.thead.withConfig({ displayName: \"vui--TableHeader\", componentId: \"vui--1qepc31\" }) `background-color:white;`;\nexport const TableBody = styled.tbody.withConfig({ displayName: \"vui--TableBody\", componentId: \"vui--g9tnvb\" }) `&&& tr:hover td{background-color:${blue.lightest};}`;\nexport const TableRow = styled.tr.withConfig({ displayName: \"vui--TableRow\", componentId: \"vui--50l9ot\" }) ``;\nexport const TableCell = styled.td.withConfig({ displayName: \"vui--TableCell\", componentId: \"vui--1o4t01c\" }) `position:relative;padding:1.25rem 1rem;text-align:${({ align }) => align || 'left'};background-color:white;font-family:${text.bodySmall.fontFamily};font-size:${text.bodySmall.fontSize};font-weight:${text.bodySmall.fontWeight};color:${text.bodySmall.color};line-height:${sizes.base};& > *{vertical-align:middle;}`;\nexport const TableHeaderCell = styled(TableCell).attrs({\n as: 'th',\n}).withConfig({ displayName: \"vui--TableHeaderCell\", componentId: \"vui--k7q8ax\" }) `border-bottom:1px solid ${grey.dark};font-family:${text.bodySmallBold.fontFamily};font-size:${text.bodySmallBold.fontSize};font-weight:${text.bodySmallBold.fontWeight};color:${text.bodySmallBold.color};`;\nexport const Table = styled.table.withConfig({ displayName: \"vui--Table\", componentId: \"vui--25ejag\" }) `width:100%;border-spacing:0;${({ striped }) => striped &&\n `\n & ${TableBody} tr:nth-child(even) td {\n background-color: ${grey.lightest};\n }\n `}`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nimport { TableBody, TableCell, TableHeader, TableRow, TableHeaderCell, Table } from './styled';\n/**\n * A simple table component which provides flexible, pre-styled table elements.\n */\nexport const SimpleTable = ({ striped = true, className, children }) => (React.createElement(Table, { striped: striped, className: className }, children));\nSimpleTable.Header = TableHeader;\nSimpleTable.Body = TableBody;\nSimpleTable.Row = TableRow;\nSimpleTable.HeaderCell = TableHeaderCell;\nSimpleTable.Cell = TableCell;\n//# sourceMappingURL=SimpleTable.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nconst TRACK_HEIGHT = 4;\nconst BORDER_SIZE = 4;\nconst SLIDER_SIZE = 12;\nconst ADDITIONAL_PADDING = 2;\nconst SliderContainer = styled.div.withConfig({ displayName: \"vui--SliderContainer\", componentId: \"vui--s5qrf0\" }) `min-width:128px;display:inline-block;position:relative;padding:${SLIDER_SIZE / 2 + ADDITIONAL_PADDING}px 0px;`;\nconst SliderTrack = styled.div.withConfig({ displayName: \"vui--SliderTrack\", componentId: \"vui--pvw1wx\" }) `background:${theme.colors.neutral.grey.base};height:${TRACK_HEIGHT}px;border-radius:20px;`;\nconst SliderDiv = styled.div.withConfig({ displayName: \"vui--SliderDiv\", componentId: \"vui--19twtgm\" }) `position:absolute;top:-${(SLIDER_SIZE - TRACK_HEIGHT) / 2 - ADDITIONAL_PADDING * 2}px;left:${(props) => `${props.left}%`};width:${SLIDER_SIZE}px;height:${SLIDER_SIZE}px;background:white;border:${BORDER_SIZE}px solid ${theme.colors.secondary.blue.base};border-radius:50%;touch-action:none;cursor:pointer;margin-left:-${SLIDER_SIZE}px;&:active,&:focus,&:focus-visible,&:focus-within{box-shadow:0 0 0 4px ${theme.colors.secondary.blue.light};}`;\nconst SliderRange = styled(SliderTrack).withConfig({ displayName: \"vui--SliderRange\", componentId: \"vui--1vb0w08\" }) `position:relative;width:${(props) => `${props.width}%`};left:${(props) => `${props.left}%`};background:${theme.colors.secondary.blue.light};bottom:${TRACK_HEIGHT}px;border-radius:0;`;\nexport { SliderContainer, SliderTrack, SliderRange, SliderDiv };\n//# sourceMappingURL=styled.js.map","import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport { SliderContainer, SliderTrack, SliderRange, SliderDiv } from './styled';\nimport { buildClassnames } from '../../utils/buildClassnames';\nconst generateClassNames = (prefix) => ({\n container: prefix ? `${prefix}-slider-container` : undefined,\n sliderRange: prefix ? `${prefix}-slider-range` : undefined,\n slider: prefix ? `${prefix}-slider` : undefined,\n startSlider: prefix ? `${prefix}-start-slider` : undefined,\n endSlider: prefix ? `${prefix}-end-slider` : undefined,\n});\nexport const Slider = ({ id, value, min, max, step = 1, onChange, className, e2eClassName, onSlideStart = () => { }, onSlideEnd = () => { }, }) => {\n const [isDragging, setIsDragging] = useState(false);\n const [draggingSliderIndex, setDraggingSliderIndex] = useState(-1);\n const containerRef = useRef(null);\n const startSliderRef = useRef(null);\n const endSliderRef = useRef(null);\n const classNames = generateClassNames(className);\n const e2eClassNames = generateClassNames(e2eClassName);\n const handleMouseMove = useCallback((e) => {\n var _a;\n if (!isDragging || !containerRef.current)\n return;\n const sliderValue = draggingSliderIndex > -1 ? value[draggingSliderIndex] : value;\n const containerSize = containerRef.current.getBoundingClientRect();\n // slider position relative to the container in percents\n const handleValue = ((e.pageX - containerSize.x) * 100) / containerSize.width;\n // current value by slider position\n let newValue = (max - min) * (handleValue / 100) + min;\n const diff = sliderValue - newValue;\n // use to apply step to new value\n if (diff > 0) {\n newValue = sliderValue + Math.ceil(newValue / step - sliderValue / step) * step;\n }\n if (diff < 0) {\n newValue = sliderValue + Math.floor(newValue / step - sliderValue / step) * step;\n }\n if (sliderValue === newValue)\n return;\n if (newValue > max)\n newValue = max;\n if (newValue < min)\n newValue = min;\n if (Array.isArray(value)) {\n if (draggingSliderIndex === 0 && newValue > value[1])\n [, newValue] = value;\n if (draggingSliderIndex === 1 && newValue < value[0])\n [newValue] = value;\n }\n // used to fix 0.30000000000000004 problem\n const decimalPlaces = step.toString().includes('.')\n ? (_a = step.toString().split('.').pop()) === null || _a === void 0 ? void 0 : _a.length\n : 0;\n newValue = Number(newValue.toFixed(decimalPlaces));\n let resultValue;\n if (Array.isArray(value)) {\n resultValue = draggingSliderIndex === 0 ? [newValue, value[1]] : [value[0], newValue];\n }\n else {\n resultValue = newValue;\n }\n onChange(resultValue);\n if (Array.isArray(resultValue) && resultValue[0] === resultValue[1]) {\n if (draggingSliderIndex === 0)\n setDraggingSliderIndex(1);\n if (draggingSliderIndex === 1)\n setDraggingSliderIndex(0);\n }\n }, [draggingSliderIndex, isDragging, max, min, onChange, step, value]);\n const handleMouseUp = useCallback(() => {\n setIsDragging(false);\n onSlideEnd();\n }, [onSlideEnd]);\n const handleMouseDown = useCallback((e, index) => {\n setIsDragging(true);\n onSlideStart();\n if (typeof index === 'number')\n setDraggingSliderIndex(index);\n e.preventDefault();\n }, [onSlideStart]);\n useEffect(() => {\n const handleStartSliderMouseDown = (e) => handleMouseDown(e, Array.isArray(value) ? 0 : 1);\n const handleEndSliderMouseDown = (e) => handleMouseDown(e, 1);\n const startSliderEl = startSliderRef.current;\n const endSliderEl = endSliderRef.current;\n startSliderEl === null || startSliderEl === void 0 ? void 0 : startSliderEl.addEventListener('mousedown', handleStartSliderMouseDown);\n endSliderEl === null || endSliderEl === void 0 ? void 0 : endSliderEl.addEventListener('mousedown', handleEndSliderMouseDown);\n document.addEventListener('mousemove', handleMouseMove);\n document.addEventListener('mouseup', handleMouseUp);\n return () => {\n startSliderEl === null || startSliderEl === void 0 ? void 0 : startSliderEl.removeEventListener('mousedown', handleStartSliderMouseDown);\n endSliderEl === null || endSliderEl === void 0 ? void 0 : endSliderEl.removeEventListener('mousedown', handleEndSliderMouseDown);\n document.removeEventListener('mousemove', handleMouseMove);\n document.removeEventListener('mouseup', handleMouseUp);\n };\n }, [handleMouseDown, handleMouseMove, handleMouseUp, value]);\n const renderSlider = (left, valueNow, index) => {\n let sliderClassName;\n if (typeof index === 'number') {\n sliderClassName = buildClassnames(index === 0\n ? [classNames === null || classNames === void 0 ? void 0 : classNames.startSlider, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.startSlider]\n : [classNames === null || classNames === void 0 ? void 0 : classNames.endSlider, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.endSlider]);\n }\n else {\n sliderClassName = buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.slider, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.slider]);\n }\n return (React.createElement(SliderDiv, { role: \"slider\", ref: index === 1 ? endSliderRef : startSliderRef, className: sliderClassName, left: left, \"aria-valuemin\": min, \"aria-valuemax\": max, \"aria-valuenow\": valueNow }));\n };\n const renderRangeSlider = (rangeSliderValue) => {\n // handle value used to get slider position relative to container from value\n const handleValueStart = ((rangeSliderValue[0] < min ? 0 : rangeSliderValue[0] - min) * 100) / (max - min);\n const handleValueEnd = ((rangeSliderValue[1] > max ? 100 : rangeSliderValue[1] - min) * 100) / (max - min);\n const rangeWidth = handleValueEnd - handleValueStart;\n return (React.createElement(React.Fragment, null,\n React.createElement(SliderRange, { className: buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.sliderRange, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.sliderRange]), left: handleValueStart, width: rangeWidth }),\n renderSlider(handleValueStart, rangeSliderValue[0], 0),\n renderSlider(handleValueEnd, rangeSliderValue[1], 1)));\n };\n const renderSingleSlider = (sliderValue) => {\n if (Array.isArray(value))\n return renderRangeSlider(value);\n let handleValue;\n if (value > max)\n handleValue = 100;\n else if (value < min)\n handleValue = 0;\n else\n handleValue = ((sliderValue - min) * 100) / (max - min);\n return renderSlider(handleValue, sliderValue);\n };\n let render;\n if (Array.isArray(value))\n render = renderRangeSlider(value);\n else\n render = renderSingleSlider(value);\n return (React.createElement(SliderContainer, { className: buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.container, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.container]), id: id, ref: containerRef },\n React.createElement(SliderTrack, null),\n render));\n};\n//# sourceMappingURL=Slider.js.map","import styled from 'styled-components';\nimport { colors } from '../../theme/modules/colors';\nimport { BaseContainer } from '../BaseContainer';\nexport const Tag = styled(BaseContainer).withConfig({ displayName: \"vui--Tag\", componentId: \"vui--qsag0v\" }) `display:inline-flex;flex-direction:row;justify-content:center;align-items:center;border-radius:4px;padding:4px 8px;${({ backgroundColor, color }) => `\n color: ${color !== null && color !== void 0 ? color : colors.neutral.ink.base};\n background-color: ${backgroundColor !== null && backgroundColor !== void 0 ? backgroundColor : colors.neutral.grey.base};\n `}`;\n//# sourceMappingURL=Tag.js.map","import styled from 'styled-components';\nimport { Stack } from '../../Stack';\nimport { BaseContainer } from '../../BaseContainer';\nimport { Text } from '../../Text';\nimport { theme } from '../../../theme';\nimport { sizes } from '../../../theme/modules/sizes';\nexport const ToastsLayoutContainer = styled(Stack).withConfig({ displayName: \"vui--ToastsLayoutContainer\", componentId: \"vui--qrqt2g\" }) `position:fixed;bottom:24px;width:100%;pointer-events:none;`;\nexport const Toast = styled(Stack).withConfig({ displayName: \"vui--Toast\", componentId: \"vui--f5gjtj\" }) `background-color:${theme.colors.neutral.ink.dark};padding:12px 24px 12px 12px;box-shadow:${theme.shadows.lg};border-radius:${theme.radius.md};pointer-events:auto;z-index:40;min-width:${({ minWidth }) => minWidth};max-width:80vw;&.veeqo-components-toast-enter{transform:translateY(12px);opacity:0;}&.veeqo-components-toast-enter-active{transform:translateY(0);opacity:1;transition:500ms ease;}&.veeqo-components-toast-exit{transform:${({ last }) => (last ? 'translateY(0)' : 'translateX(0)')};opacity:1;}&.veeqo-components-toast-exit-active{transform:${({ last }) => (last ? 'translateY(12px)' : 'translateX(12px)')};opacity:0;transition:500ms ease;}`;\nexport const IconWrap = styled(BaseContainer).withConfig({ displayName: \"vui--IconWrap\", componentId: \"vui--n3gc7q\" }) `display:flex;flex-direction:row;align-items:center;justify-content:center;height:40px;width:40px;border-radius:${theme.radius.md};background-color:${({ color }) => color};color:#fff;svg{width:${sizes.md};height:${sizes.md};}`;\nexport const ContentStack = styled(Stack).withConfig({ displayName: \"vui--ContentStack\", componentId: \"vui--12f8l37\" }) `flex-grow:1;`;\nexport const StyledText = styled(Text).withConfig({ displayName: \"vui--StyledText\", componentId: \"vui--1qgwlso\" }) `color:white;font-size:16px;`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nimport { colors } from '../../../theme/modules/colors';\nimport { IconWrap, Toast as ToastContainer, StyledText as Text, ContentStack } from './styled';\nimport { buildClassnames } from '../../../utils/buildClassnames';\nimport { Button } from '../../Button';\nimport { SuccessIcon } from '../../../tempIcons/SuccessIcon';\nimport { InfoIcon } from '../../../tempIcons/InfoIcon';\nimport { AttentionIcon } from '../../../tempIcons/AttentionIcon';\nimport { MergeIcon } from '../../../tempIcons/MergeIcon';\nimport { CrossIcon } from '../../../tempIcons/CrossIcon';\nconst toastTypes = {\n info: {\n accentColor: colors.brand.blue.base,\n icon: React.createElement(InfoIcon, null),\n },\n success: {\n accentColor: colors.secondary.green.base,\n icon: React.createElement(SuccessIcon, null),\n },\n error: {\n accentColor: colors.secondary.red.base,\n icon: React.createElement(AttentionIcon, null),\n },\n merge: {\n accentColor: colors.secondary.purple.base,\n icon: React.createElement(MergeIcon, null),\n },\n};\nconst generateClassNames = (prefix) => ({\n container: prefix ? `${prefix}-toast-container` : undefined,\n icon: prefix ? `${prefix}-toast-icon` : undefined,\n closeIcon: prefix ? `${prefix}-toast-close-icon` : undefined,\n});\nexport const Toast = ({ className, e2eClassName, type, iconSlot, text, last, minWidth, cta, onClose, }) => {\n const classNames = generateClassNames(className);\n const e2eClassNames = generateClassNames(e2eClassName);\n return (React.createElement(ToastContainer, { className: buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.container, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.container]), direction: \"horizontal\", alignY: \"center\", minWidth: minWidth, last: last },\n React.createElement(IconWrap, { color: toastTypes[type].accentColor, className: buildClassnames([classNames.icon, e2eClassNames.icon]) }, iconSlot !== null && iconSlot !== void 0 ? iconSlot : toastTypes[type].icon),\n React.createElement(ContentStack, { direction: \"horizontal\", alignY: \"center\", alignX: \"between\" },\n React.createElement(Text, { variant: \"body\" }, text),\n cta),\n React.createElement(Button, { variant: \"flat\", icon: React.createElement(CrossIcon, { color: \"white\" }), onClick: onClose, \"aria-label\": \"Close\" })));\n};\n//# sourceMappingURL=Toast.js.map","import React from 'react';\nexport const AttentionIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M11 15H13V17H11V15ZM11 7H13V13H11V7ZM11.99 2C6.47 2 2 6.48 2 12C2 17.52 6.47 22 11.99 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 11.99 2ZM12 20C7.58 20 4 16.42 4 12C4 7.58 7.58 4 12 4C16.42 4 20 7.58 20 12C20 16.42 16.42 20 12 20Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=AttentionIcon.js.map","import React from 'react';\nexport const MergeIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M10.9887 6.82229H6.84911L12.1714 1.5L17.4937 6.82229H13.3541V14.4036L6.25774 21.5L4.59009 19.8323L10.9887 13.4338V6.82229ZM19.7527 19.8323L18.0851 21.5L14.0519 17.4669L15.7196 15.7992L19.7527 19.8323Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=MergeIcon.js.map","import styled from 'styled-components';\nimport { BaseContainer } from '../BaseContainer';\nimport { theme } from '../../theme';\nconst Slider = styled.span.withConfig({ displayName: \"vui--Slider\", componentId: \"vui--10ka3tn\" }) `content:'';position:absolute;top:0;left:0;right:0;bottom:0;border-radius:18px;background-color:#cdd1d5;-webkit-transition:0.3s;transition:0.3s;&:after{content:'';position:absolute;border-radius:50%;background-color:${({ disabled, switched }) => disabled && switched ? theme.colors.secondary.blue.lightest : 'white'};-webkit-transition:0.3s;transition:0.3s;}`;\nconst Input = styled.input.withConfig({ displayName: \"vui--Input\", componentId: \"vui--1f7rwsl\" }) `&:focus-visible + ${Slider}{box-shadow:0 0 0 4px ${theme.colors.brand.blue.light};}&:checked + ${Slider}{background-color:#0079d1;}&:disabled + ${Slider}{background-color:${theme.colors.neutral.grey.base};}&:checked:disabled + ${Slider}{background-color:${theme.colors.secondary.blue.light};}`;\nconst Switch = styled.label.withConfig({ displayName: \"vui--Switch\", componentId: \"vui--16c93z6\" }) `display:inline-block;position:relative;cursor:${({ disabled }) => (disabled ? 'default' : 'pointer')};height:${({ small }) => (small ? '28px' : '36px')};width:${({ small }) => (small ? '56px' : '72px')};input{position:absolute;opacity:0;}${Slider}:after{height:${({ small }) => (small ? '22px' : '28px')};width:${({ small }) => (small ? '22px' : '28px')};left:${({ small }) => (small ? '3px' : '4px')};bottom:${({ small }) => (small ? '3px' : '4px')};}${Input}:checked + ${Slider}{&:after,svg{-webkit-transform:translateX(${({ small }) => (small ? '28px' : '36px')});-ms-transform:translateX(${({ small }) => (small ? '28px' : '36px')});transform:translateX(${({ small }) => (small ? '28px' : '36px')});}}`;\nconst Wrapper = styled(BaseContainer).withConfig({ displayName: \"vui--Wrapper\", componentId: \"vui--13u3unt\" }) `cursor:${({ disabled }) => (disabled ? 'not-allowed' : 'pointer')};display:inline-block;user-select:none;`;\nexport { Switch, Slider, Input, Wrapper };\n//# sourceMappingURL=styled.js.map","import React, { forwardRef } from 'react';\nimport { Input, Slider, Switch, Wrapper } from './styled';\n/**\n * A toggle switch component, use-cases should wrap with a label or\n */\nexport const Toggle = forwardRef(({ id, className, name, switched, small, onClick = () => { }, disabled, ariaLabel }, ref) => (React.createElement(Wrapper, { className: className, disabled: disabled },\n React.createElement(Switch, { small: small, disabled: disabled, role: \"switch\" },\n React.createElement(Input, { id: id, type: \"checkbox\", name: name, \"aria-label\": ariaLabel, checked: !!switched, onChange: disabled ? undefined : onClick, disabled: disabled, ref: ref }),\n React.createElement(Slider, { switched: switched, disabled: disabled })))));\n//# sourceMappingURL=Toggle.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nexport const StyledButton = styled.button.withConfig({ displayName: \"vui--StyledButton\", componentId: \"vui--xt3hiw\" }) `user-select:none;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-family:${theme.fontFamily};font-weight:400;border:1px solid;box-shadow:0 1px 3px rgba(55, 66, 77, 0.15);${({ size, checked }) => {\n let height = '40px';\n let paddingLeft = '24px';\n let paddingRight = '24px';\n let borderRadius = '8px';\n let fontSize = '16px';\n let outlineWidth = '4px';\n let backgroundColor = 'white';\n let borderColor = '#CDD1D5';\n let color = '#37424D';\n if (size === 'sm') {\n height = '32px';\n paddingLeft = '16px';\n paddingRight = '16px';\n borderRadius = '4px';\n fontSize = '14px';\n outlineWidth = '2px';\n }\n if (checked) {\n backgroundColor = '#0079D1';\n borderColor = '#0079D1';\n color = 'white';\n }\n return `\n --outline-width: ${outlineWidth};\n\n height: ${height};\n padding-left: ${paddingLeft};\n padding-right: ${paddingRight};\n border-radius: ${borderRadius};\n font-size: ${fontSize};\n\n background-color: ${backgroundColor};\n border-color: ${borderColor};\n color: ${color};\n `;\n}} & > * + *{margin-left:8px;}&:hover{cursor:pointer;background-color:${({ checked }) => (checked ? '#005A9C' : '#FAFAFB')};}&:active{background-color:${({ checked }) => (checked ? '#005A9C' : '#FAFAFB')};border-color:${({ checked }) => (checked ? '#005A9C' : '#0079D1')};box-shadow:0 0 0 var(--outline-width)#80bce8;}&:focus{box-shadow:0 0 0 var(--outline-width)#80bce8;outline:0;}&:disabled{cursor:unset;box-shadow:none;background-color:#dfe3e8;border-color:#dfe3e8;color:#637381;}& > span{position:relative;top:-1px;}`;\n//# sourceMappingURL=styled.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nimport { BaseContainer } from '../../BaseContainer';\nconst commonStyles = `\n position: fixed;\n height: 100%;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n`;\nexport const Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--5gocp5\" }) `${commonStyles} display:${(props) => (props.shouldShow ? 'initial' : 'none')};z-index:${theme.layers.modal};`;\nexport const Shadow = styled(BaseContainer).withConfig({ displayName: \"vui--Shadow\", componentId: \"vui--p8qe4b\" }) `${commonStyles} background-color:rgba(55,66,77,0.5);`;\nexport const Wrap = styled(BaseContainer).withConfig({ displayName: \"vui--Wrap\", componentId: \"vui--1u28do5\" }) `position:relative;height:100%;width:100%;z-index:1;`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\n// @ts-ignore\nimport ScrollLock from 'react-scrolllock-configurable';\nimport { Portal } from '../../Portal';\nimport { Container, Shadow, Wrap } from './styled';\nimport { buildClassnames } from '../../../utils/buildClassnames';\nconst WithPortal = ({ usePortal, children }) => (\n// eslint-disable-next-line react/jsx-no-useless-fragment\nReact.createElement(React.Fragment, null, usePortal ? React.createElement(Portal, null, children) : children));\nexport const Popup = ({ className, children = null, shouldShow = false, usePortal = true, }) => (React.createElement(WithPortal, { usePortal: usePortal },\n React.createElement(Container, { className: buildClassnames([`${className}-container`, className]), shouldShow: shouldShow },\n React.createElement(Shadow, null),\n React.createElement(ScrollLock, { isActive: shouldShow },\n React.createElement(Wrap, { className: buildClassnames([`${className}-wrap`, className]) }, children)))));\n//# sourceMappingURL=Popup.js.map","import styled from 'styled-components';\nimport { Button } from '../Button';\nexport const PopupContent = styled.div.withConfig({ displayName: \"vui--PopupContent\", componentId: \"vui--ohq9qo\" }) `display:flex;justify-content:center;align-items:center;height:100%;`;\nexport const VideoWrapper = styled.div.withConfig({ displayName: \"vui--VideoWrapper\", componentId: \"vui--55zou\" }) `position:relative;iframe{width:57vw;height:calc(57vw * 0.5625);border-radius:8px;}`;\nexport const ButtonSC = styled(Button).withConfig({ displayName: \"vui--ButtonSC\", componentId: \"vui--2rc7ks\" }) `position:absolute;top:0px;right:-45px;`;\n//# sourceMappingURL=styled.js.map","export var ViewTypes;\n(function (ViewTypes) {\n ViewTypes[\"saved\"] = \"saved\";\n ViewTypes[\"fixed\"] = \"fixed\";\n ViewTypes[\"draft\"] = \"draft\";\n})(ViewTypes || (ViewTypes = {}));\n//# sourceMappingURL=types.js.map","import styled from 'styled-components';\nimport { colors } from '../../theme/modules/colors';\nimport { Text } from '../Text';\nimport { BaseContainer } from '../BaseContainer';\nimport { sizes } from '../../theme/modules/sizes';\nconst Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--m1gs4v\" }) `padding:14px 24px;`;\nconst CounterText = styled(Text).withConfig({ displayName: \"vui--CounterText\", componentId: \"vui--1ilv3bg\" }) `line-height:1;`;\nconst Contour = styled(BaseContainer).withConfig({ displayName: \"vui--Contour\", componentId: \"vui--b8oq7f\" }) `position:relative;display:flex;flex-direction:row;align-items:center;height:40px;border-radius:4px;padding:0 12px;border:1px solid transparent;cursor:pointer;${({ colourPalette, customTextColour }) => `\n &:hover {\n border: 1px solid ${colourPalette.base};\n background-color: ${colourPalette.lightest};\n }\n\n ${Text} {\n color: ${customTextColour !== null && customTextColour !== void 0 ? customTextColour : colors.neutral.ink.dark};\n }\n `} ${({ active, colourPalette }) => active &&\n `\n background-color: ${colourPalette.lightest};\n `}`;\nconst CounterContainer = styled(Text).withConfig({ displayName: \"vui--CounterContainer\", componentId: \"vui--1xuhw17\" }) `display:inline-flex;flex-direction:row;justify-content:center;align-items:center;border-radius:4px;padding:2px 4px;min-width:20px;height:20px;margin-left:8px;${({ active, colourPalette }) => active &&\n `\n background-color: ${colourPalette.base};\n\n & > ${CounterText} {\n color: #fff;\n }\n `}`;\nconst IconStyling = {\n style: {\n marginLeft: sizes.xs,\n padding: sizes.xs,\n height: sizes.base,\n width: sizes.base,\n },\n};\nexport const CustomIconWrapper = styled.div.withConfig({ displayName: \"vui--CustomIconWrapper\", componentId: \"vui--122jw7g\" }) `display:flex;align-items:center;margin-right:${sizes.sm};svg{height:${sizes.base};width:${sizes.base};}`;\nexport { Container, Contour, Text, CounterContainer, CounterText, IconStyling };\n//# sourceMappingURL=styled.js.map","import React from 'react';\nexport const EditIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M3 18.0418V21.9996H6.95778L18.6306 10.3273L14.6728 6.36952L3 18.0418ZM21.6913 7.2661C22.1029 6.85501 22.1029 6.19011 21.6913 5.7785L19.2216 3.30831C18.81 2.89723 18.1451 2.89723 17.7335 3.30831L15.8021 5.23971L19.7599 9.19749L21.6913 7.2661Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=EditIcon.js.map","import React, { useCallback } from 'react';\nimport { useHover } from '../../hooks';\nimport { colors } from '../../theme/modules/colors';\nimport { ViewTypes } from './types';\nimport { Container, Contour, CounterContainer, CounterText, CustomIconWrapper, IconStyling, Text, } from './styled';\nimport { buildClassnames } from '../../utils/buildClassnames';\nimport { CrossIcon } from '../../tempIcons/CrossIcon';\nimport { EditIcon } from '../../tempIcons/EditIcon';\nconst generateClassNames = (prefix) => ({\n delete: prefix ? `${prefix}-delete` : undefined,\n options: prefix ? `${prefix}-options` : undefined,\n edit: prefix ? `${prefix}-edit` : undefined,\n container: prefix ? `${prefix}-container` : undefined,\n active: prefix ? `${prefix}-active` : undefined,\n counter: prefix ? `${prefix}-counter` : undefined,\n});\nexport const View = ({ id, iconSlot, name, type, className, colourPalette = colors.secondary.blue, customTextColour, count, active = false, onClick, onDelete, onEdit, e2eClassName, }) => {\n const classNames = generateClassNames(className);\n const e2eClassNames = generateClassNames(e2eClassName);\n const [isHovered, handleEnter, handleLeave] = useHover();\n const handleClick = useCallback(() => onClick(id), [id, onClick]);\n const handleDelete = useCallback((event) => {\n event.stopPropagation();\n if (onDelete)\n onDelete(id);\n }, [onDelete, id]);\n const handleEdit = useCallback((event) => {\n event.stopPropagation();\n if (onEdit)\n onEdit(id);\n }, [onEdit, id]);\n const isDraft = type === ViewTypes.draft;\n const isSaved = type === ViewTypes.saved;\n const fill = active ? colors.neutral.ink.dark : colors.neutral.ink.base;\n return (React.createElement(Container, { className: `${buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.container, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.container])} ${(active && (e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.active)) || ''}`, onClick: handleClick },\n React.createElement(Contour, { active: active, onMouseEnter: handleEnter, onMouseLeave: handleLeave, colourPalette: colourPalette, customTextColour: customTextColour },\n iconSlot && React.createElement(CustomIconWrapper, null, iconSlot),\n React.createElement(Text, { variant: \"bodyBold\" }, name),\n count && (React.createElement(CounterContainer, { active: active || isHovered, colourPalette: colourPalette, customTextColour: customTextColour },\n React.createElement(CounterText, { className: e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.counter, variant: \"subheadingSmall\" }, count))),\n isDraft && (React.createElement(CrossIcon, Object.assign({}, IconStyling, { color: fill, className: e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.delete, onClick: handleDelete }))),\n isSaved && active && (React.createElement(EditIcon, Object.assign({}, IconStyling, { color: fill, className: e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.edit, onClick: handleEdit }))))));\n};\n//# sourceMappingURL=View.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nimport { Button } from '../Button';\nimport { TextField } from '../TextField';\nimport { BaseContainer } from '../BaseContainer';\nconst Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--zood5u\" }) `display:flex;flex-direction:column;position:relative;`;\nconst Row = styled(BaseContainer).withConfig({ displayName: \"vui--Row\", componentId: \"vui--f0y2wt\" }) `display:flex;flex-direction:row;`;\nconst StyledTextField = styled(TextField).withConfig({ displayName: \"vui--StyledTextField\", componentId: \"vui--1l16g0h\" }) `&&&{text-align:left;width:52px;}`;\nconst StyledButton = styled(Button).withConfig({ displayName: \"vui--StyledButton\", componentId: \"vui--wvwega\" }) `padding:0 4px;border-color:${theme.colors.neutral.ink.lightest};margin-right:4px;${(props) => props.hasError &&\n `\n border-color: ${theme.colors.secondary.red.base};\n `};`;\nexport { Container, Row, StyledTextField as TextField, StyledButton as Button };\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { isWeightImperial, isWeightMetric } from './types';\nimport { ComponentSize } from '../types';\nimport { InputGroup } from '../InputGroup';\nimport { withLabels } from '../../hoc';\nimport { Container, TextField, Row, Button } from './styled';\nexport const WeightInput = withLabels((_a) => {\n var { size = ComponentSize.base, hasError, className } = _a, rest = __rest(_a, [\"size\", \"hasError\", \"className\"]);\n return (React.createElement(Container, { className: className },\n React.createElement(Row, null,\n isWeightMetric(rest) && (React.createElement(InputGroup, null,\n React.createElement(TextField, Object.assign({ size: size, onChange: rest.handleChangeGram, name: \"gram\", type: \"number\", value: rest.gram, hasError: hasError }, rest)),\n React.createElement(Button, { hasError: hasError, size: size }, \"g\"))),\n isWeightImperial(rest) && (React.createElement(React.Fragment, null,\n React.createElement(InputGroup, null,\n React.createElement(TextField, Object.assign({ size: size, onChange: rest.handleChangePound, name: \"ounce\", type: \"number\", value: rest.pound, hasError: hasError }, rest)),\n React.createElement(Button, { hasError: hasError, size: size }, \"lb\")),\n React.createElement(InputGroup, null,\n React.createElement(TextField, Object.assign({ size: size, onChange: rest.handleChangeOunce, name: \"pound\", type: \"number\", value: rest.ounce, hasError: hasError }, rest)),\n React.createElement(Button, { hasError: hasError, size: size }, \"oz\")))))));\n});\nWeightInput.displayName = 'WeightInput';\nWeightInput.defaultProps = {\n weightUnit: 'lb',\n};\n//# sourceMappingURL=WeightInput.js.map","export const isWeightMetric = (props) => {\n return props.weightUnit === 'g';\n};\nexport const isWeightImperial = (props) => {\n return props.weightUnit === 'lb' || props.weightUnit === 'oz';\n};\n//# sourceMappingURL=types.js.map","import React, { useState } from 'react';\nimport { motion } from 'framer-motion';\nimport { Top, Text, Left, Right, Description, AccordionDetails, AccordionContent, AccordionSummary, } from './styled';\nimport { colors } from '../../theme/modules/colors';\nimport { UpArrowIcon } from '../../tempIcons/UpArrowIcon';\nexport const Accordion = ({ className, children, label, iconSlot, glyphColor = colors.neutral.ink.lightest, timeout = 350, description, shouldOpenOnMount, }) => {\n const [shouldOpen, setShouldOpen] = useState(!!shouldOpenOnMount);\n const handleOpen = () => setShouldOpen(!shouldOpen);\n return (React.createElement(AccordionDetails, { open: !!shouldOpenOnMount, className: className },\n React.createElement(AccordionSummary, { onClick: handleOpen },\n React.createElement(Top, null,\n React.createElement(Left, { glyphColor: glyphColor },\n iconSlot,\n React.createElement(Text, { variant: \"body\" }, label)),\n React.createElement(Right, null,\n React.createElement(motion.span, { animate: {\n rotate: shouldOpen ? 180 : 0,\n } },\n React.createElement(UpArrowIcon, { name: shouldOpen ? 'downArrow' : 'upArrow' })))),\n !!description && React.createElement(Description, { variant: \"hintText\" }, description)),\n shouldOpen && (React.createElement(AccordionContent, { initial: { opacity: 0 }, exit: { opacity: 0 }, animate: { opacity: 1 }, transition: { from: 0, type: 'tween', duration: timeout / 1000 } }, children))));\n};\n//# sourceMappingURL=Accordion.js.map","import React from 'react';\nimport { CommonAnchor } from './styled';\nexport const Anchor = ({ children, className, text, href, target }) => (React.createElement(CommonAnchor, { href: href, target: target, className: className }, children || text));\n//# sourceMappingURL=Anchor.js.map","/* eslint-disable react/no-array-index-key */\nimport React from 'react';\nimport { theme } from '../../theme';\nimport { AvatarSC } from './styled';\nexport const Avatar = ({ width = '40px', name = 'Veeqo', bgColor = theme.colors.secondary.blue.base, textColor = '#ffffff', }) => {\n const userInitials = name.toUpperCase().match(/\\b(\\w)/g);\n return (React.createElement(AvatarSC, { width: width, bgColor: bgColor, textColor: textColor, className: \"avatar\" }, userInitials === null || userInitials === void 0 ? void 0 : userInitials.slice(0, 2).map((initial, i) => React.createElement(\"span\", { key: `${initial}-${i}` }, initial))));\n};\n//# sourceMappingURL=Avatar.js.map","import React, { useState } from 'react';\nimport { ColumnGrid, ContentContainer } from './styled';\nexport const DetailPage = ({ renderHeader, children }) => {\n const [shouldShowSidebar, setShouldShowSidebar] = useState(true);\n const toggleSidebar = () => setShouldShowSidebar(!shouldShowSidebar);\n return (React.createElement(\"main\", null,\n renderHeader(toggleSidebar, shouldShowSidebar),\n React.createElement(ContentContainer, null,\n React.createElement(ColumnGrid, { showSidebar: shouldShowSidebar }, children))));\n};\n//# sourceMappingURL=DetailPage.js.map","import React, { useState, useCallback } from 'react';\nimport { usePopper } from 'react-popper';\nimport { createPortal } from 'react-dom';\nimport { PlaceholderImage } from './components/PlaceholderImage';\nimport { Container, CommonImage, PreviewImageContainer, PreviewImage } from './components/styled';\nimport { generateClassNames } from './utils';\nimport { buildClassnames } from '../../utils/buildClassnames';\nexport const Image = ({ src, alt = '', className, e2eClassName, width, height, previewWidth, previewHeight, previewPlacement = 'right', previewEnabled = false, placeholder, placeholderWidth, placeholderHeight, disablePlaceholder = false, }) => {\n const classNames = generateClassNames(className);\n const e2eClassNames = generateClassNames(e2eClassName);\n const [isPreviewOpen, setIsPreviewOpen] = useState(false);\n const [imageState, setImageState] = useState({ isLoaded: false, isError: false });\n const [referenceElement, setReferenceElement] = React.useState(null);\n const [popperElement, setPopperElement] = React.useState(null);\n const { styles, attributes } = usePopper(referenceElement, popperElement, {\n placement: previewPlacement,\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [0, 12],\n },\n },\n ],\n });\n const openImagePreview = useCallback(() => (previewEnabled ? setIsPreviewOpen(true) : {}), [previewEnabled]);\n const closeImagePreview = useCallback(() => (previewEnabled ? setIsPreviewOpen(false) : {}), [previewEnabled]);\n const onLoad = () => setImageState({ isLoaded: true, isError: false });\n const onError = () => setImageState({ isLoaded: true, isError: true });\n const isImageHidden = !imageState.isLoaded || imageState.isError;\n return (React.createElement(Container, { className: buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.container, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.container, className]) },\n React.createElement(CommonImage, { src: src, alt: alt, className: buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.image, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.image]), width: width, height: height, onLoad: onLoad, onError: onError, previewEnabled: previewEnabled, onMouseEnter: openImagePreview, onMouseLeave: closeImagePreview, style: isImageHidden ? { display: 'none' } : {}, ref: setReferenceElement }),\n !disablePlaceholder &&\n isImageHidden &&\n (placeholder || (React.createElement(PlaceholderImage, { className: buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.placeholder, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.placeholder]), width: placeholderWidth || width, height: placeholderHeight || height }))),\n isPreviewOpen &&\n createPortal(React.createElement(PreviewImageContainer, Object.assign({ ref: setPopperElement, style: styles.popper }, attributes.popper, { className: buildClassnames([\n classNames === null || classNames === void 0 ? void 0 : classNames.previewImageContainer,\n e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.previewImageContainer,\n ]) }),\n React.createElement(PreviewImage, { src: src, alt: \"\", width: previewWidth, height: previewHeight })), document.body)));\n};\n//# sourceMappingURL=Image.js.map","import { __rest } from \"tslib\";\n/* eslint-disable react/destructuring-assignment */\nimport React, { useEffect, useRef, useState } from 'react';\nimport { AnimatePresence } from 'framer-motion';\nimport { MainSection, NonScrollableBody } from './components/styled';\nimport { hasFooterSlot, hasHeaderSlot } from './types';\nimport { Dialog } from './components/Dialog/Dialog';\nimport { useIsOverflowing } from '../../hooks/useIsOverflowing';\nimport { Button } from '../Button';\nimport { Card } from '../Card';\nimport { CardHeader } from '../CardHeader';\nimport { Stack } from '../Stack';\nexport const Modal = (props) => {\n const { shouldShow, showHeaderCloseButton = true, fullBleed = false, variant = 'base', onClose: parentOnClose, children, } = props;\n const modalRef = useRef(null);\n const [mainSectionRef, setMainSectionRef] = useState(null);\n useEffect(() => {\n var _a, _b;\n if (shouldShow) {\n (_a = modalRef.current) === null || _a === void 0 ? void 0 : _a.removeAttribute('open'); // Allows for conditional rendering.\n (_b = modalRef.current) === null || _b === void 0 ? void 0 : _b.showModal();\n }\n }, [shouldShow]);\n const { isOverflowing: isContentOverflowing, onScroll } = useIsOverflowing(mainSectionRef);\n const onClose = () => {\n var _a;\n (_a = modalRef.current) === null || _a === void 0 ? void 0 : _a.close();\n parentOnClose();\n };\n return (React.createElement(AnimatePresence, null, shouldShow && (React.createElement(\"div\", { \"data-testid\": \"dialog-wrapper\" },\n React.createElement(NonScrollableBody, null),\n React.createElement(Dialog, { ref: modalRef, onClose: onClose, variant: variant, \"aria-describedby\": \"modal_title\" },\n React.createElement(Card.Surface, null,\n hasHeaderSlot(props) ? (props.headerSlot) : (React.createElement(CardHeader, Object.assign({ id: \"modal_title\", headerVariant: \"headingLarge\", title: props.headerTitle, subtitle: props.headerSubtitle }, (showHeaderCloseButton && { onClickClose: onClose })))),\n React.createElement(MainSection, { onScroll: onScroll, ref: setMainSectionRef, isScrollable: isContentOverflowing, fullBleed: fullBleed }, children),\n hasFooterSlot(props) && props.footerSlot,\n !hasFooterSlot(props) && (props.leftActions || props.rightActions) && (React.createElement(Card.Footer, null,\n React.createElement(Stack, { direction: \"horizontal\", alignX: props.leftActions ? 'between' : 'end' },\n props.leftActions && (React.createElement(Stack, { direction: \"horizontal\", alignX: \"start\", \"data-testid\": \"left-actions-container\" }, props.leftActions.map((_a) => {\n var { label } = _a, actionProps = __rest(_a, [\"label\"]);\n return (React.createElement(Button, Object.assign({ key: label, type: \"button\" }, actionProps), label));\n }))),\n props.rightActions && (React.createElement(Stack, { direction: \"horizontal\", alignX: \"end\", \"data-testid\": \"right-actions-container\" }, props.rightActions.map((_a) => {\n var { label } = _a, actionProps = __rest(_a, [\"label\"]);\n return (React.createElement(Button, Object.assign({ key: label, type: \"button\" }, actionProps), label));\n }))))))))))));\n};\n//# sourceMappingURL=Modal.js.map","import React from 'react';\nimport { Stack } from '../Stack';\nimport { ActionList } from '../ActionList';\nimport { Button } from '../Button';\nimport { Header, Title, Subtitle, Image, ActionsContainer, SidebarToggleButton, ColumnGrid, } from './styled';\nimport { RightArrowIcon } from '../../tempIcons/RightArrowIcon';\nimport { LeftArrowIcon } from '../../tempIcons/LeftArrowIcon';\nimport { sizes } from '../../theme/modules/sizes';\nexport const PageHeader = ({ title, subtitle, imageSrc, actions, quickActions, backAction, Accessory, shadow = 'none', onClickPrevious, onClickNext, onClickToggleSidebar, }) => {\n const actionsMarkup = actions && (React.createElement(ActionList, { buttonVariant: !quickActions ? 'primary' : 'default', title: \"Actions\", sections: actions }));\n const quickActionsMarkup = quickActions === null || quickActions === void 0 ? void 0 : quickActions.map((action) => (React.createElement(Button, { key: action.title, variant: action.variant, icon: action.icon, onClick: action.onClick }, action.title)));\n const backActionMarkup = backAction && (React.createElement(Button, { onClick: backAction.onClick, icon: React.createElement(LeftArrowIcon, null), variant: \"link\" }, backAction.title));\n const toggleSidebarMarkup = onClickToggleSidebar && (React.createElement(Stack, { direction: \"horizontal\", alignX: \"end\" },\n React.createElement(SidebarToggleButton, { onClick: onClickToggleSidebar },\n React.createElement(\"span\", null, \"Toggle sidebar\"),\n React.createElement(RightArrowIcon, { width: sizes.md }))));\n return (React.createElement(Header, { shadow: shadow },\n React.createElement(Stack, null,\n backActionMarkup,\n React.createElement(ColumnGrid, null,\n React.createElement(Stack, { direction: \"horizontal\", spacing: \"md\" },\n imageSrc && React.createElement(Image, { src: imageSrc, alt: \"\", width: \"72\", height: \"72\" }),\n React.createElement(\"div\", { style: { flex: 1 } },\n React.createElement(Stack, { alignX: \"stretch\" },\n React.createElement(Title, null, title),\n Accessory,\n subtitle && React.createElement(Subtitle, null, subtitle)))),\n React.createElement(ActionsContainer, null,\n React.createElement(Stack, { direction: \"horizontal\", alignX: \"end\", spacing: \"sm\" },\n quickActionsMarkup,\n actionsMarkup,\n onClickPrevious && React.createElement(Button, { icon: React.createElement(LeftArrowIcon, null), onClick: onClickPrevious }),\n onClickNext && React.createElement(Button, { icon: React.createElement(RightArrowIcon, null), onClick: onClickNext })),\n toggleSidebarMarkup)))));\n};\n//# sourceMappingURL=PageHeader.js.map","import React from 'react';\nimport { Stack } from '../Stack';\nimport { PageInput, PaginationButton } from './styled';\nimport { PageCount } from './components';\nimport { usePagination } from './hooks/usePagination';\nimport { RightArrowIcon } from '../../tempIcons/RightArrowIcon';\nimport { StartArrowIcon } from '../../tempIcons/StartArrowIcon';\nimport { LeftArrowIcon } from '../../tempIcons/LeftArrowIcon';\nimport { EndArrowIcon } from '../../tempIcons/EndArrowIcon';\nimport { ComponentSize } from '../types';\nexport const Pagination = ({ testId, e2eClassName, currentPage, totalPagesCount, handleChangePage, }) => {\n const { pageInputValue, handleIncrement, handleDecrement, handleFormSubmit, handleInputChange, handleSubmit, } = usePagination({\n currentPage,\n totalPagesCount,\n handleChangePage,\n });\n /**\n * A function to go back to the first page, provided we aren't already there.\n */\n const handleSkipBack = () => {\n if (currentPage !== 1)\n handleChangePage(1);\n };\n /**\n * A function to go to the last page, provided we aren't already there.\n */\n const handleSkipToEnd = () => {\n if (currentPage !== totalPagesCount)\n handleChangePage(totalPagesCount);\n };\n return (React.createElement(Stack, { direction: \"horizontal\", alignY: \"center\", spacing: \"xs\", \"data-testid\": testId, className: e2eClassName },\n React.createElement(PaginationButton, { onClick: handleSkipBack, icon: React.createElement(StartArrowIcon, null), size: \"sm\", \"aria-label\": \"go to first page\" }),\n React.createElement(PaginationButton, { onClick: handleDecrement, icon: React.createElement(LeftArrowIcon, null), size: \"sm\", \"aria-label\": \"go to previous page\", \"aria-disabled\": currentPage <= 1 }),\n React.createElement(\"form\", { onSubmit: handleFormSubmit },\n React.createElement(PageInput, { \"aria-live\": \"polite\", \"aria-label\": `page ${currentPage} of ${totalPagesCount}`, size: ComponentSize.sm, type: \"number\", value: pageInputValue, min: \"1\", max: `${totalPagesCount}`, onChange: handleInputChange, onBlur: handleSubmit })),\n React.createElement(PageCount, { count: totalPagesCount }),\n React.createElement(PaginationButton, { onClick: handleIncrement, icon: React.createElement(RightArrowIcon, null), size: \"sm\", \"aria-label\": \"go to next page\", \"aria-disabled\": currentPage >= totalPagesCount }),\n React.createElement(PaginationButton, { onClick: handleSkipToEnd, icon: React.createElement(EndArrowIcon, null), size: \"sm\", \"aria-label\": \"go to last page\", \"aria-disabled\": currentPage >= totalPagesCount })));\n};\n//# sourceMappingURL=Pagination.js.map","import React from 'react';\nimport { Button } from '../Button';\nimport { theme } from '../../theme';\nimport { Container, Input, IconContainer, Loader } from './styled';\nimport { CrossIcon } from '../../tempIcons/CrossIcon';\nimport { SearchIcon } from '../../tempIcons/SearchIcon';\nimport { sizes } from '../../theme/modules/sizes';\nexport const Search = ({ type = 'text', disabled = false, onClearClick, onChange, onBlur, onFocus, onKeyUp, onKeyDown, onKeyPress, value = '', error, placeholder = '', className = '', name, isLoading = false, fill, reversed = false, autoComplete = 'on', size = 'base', }) => {\n const shouldShowClear = value && value.length > 0;\n const renderIcon = () => {\n if (isLoading) {\n return React.createElement(Loader, { height: 24, color: fill || theme.colors.secondary.blue.base });\n }\n if (shouldShowClear && onClearClick) {\n return (React.createElement(Button, { variant: \"unstyled\", onClick: onClearClick, style: { display: 'flex' }, \"aria-label\": \"Clear text\" },\n React.createElement(CrossIcon, { color: fill || theme.colors.neutral.ink.dark })));\n }\n return (React.createElement(Button, { variant: \"unstyled\", onClick: () => onChange(value), style: { display: 'flex' }, \"aria-label\": \"Search\" },\n React.createElement(SearchIcon, { color: fill || theme.colors.neutral.ink.dark, height: sizes.md, width: sizes.md })));\n };\n return (React.createElement(Container, { className: className, iconPosition: reversed ? 'left' : 'right' },\n React.createElement(Input, { size: size, type: type, value: value, onChange: onChange, onBlur: onBlur, onFocus: onFocus, onKeyUp: onKeyUp, onKeyDown: onKeyDown, onKeyPress: onKeyPress, placeholder: placeholder, name: name, disabled: disabled, error: error, autoComplete: autoComplete }),\n React.createElement(IconContainer, null, renderIcon())));\n};\n//# sourceMappingURL=Search.js.map","import React from 'react';\nimport { Button } from '../Button';\nimport { SegmentedControlContainer } from './styled';\nexport const SegmentedControl = ({ options, selected, className, onChange, }) => (React.createElement(SegmentedControlContainer, { className: className ? `${className}-container` : undefined }, options.map((option) => (React.createElement(Button, { variant: option.value === selected ? 'primary' : 'default', key: option.key, onClick: () => onChange(option.value), disabled: option.disabled, className: option.value === selected ? 'veeqo-components-active-button' : '' }, option.label)))));\n//# sourceMappingURL=SegmentedControl.js.map","import { CSSTransition, TransitionGroup } from 'react-transition-group';\nimport React, { useEffect } from 'react';\nimport { createPortal } from 'react-dom';\nimport { ToastsLayoutContainer } from './components/styled';\nimport { Toast } from './components/Toast';\nexport const ToastsLayout = ({ className, e2eClassName, toasts, minWidth = '50vw', max = 3, onClose, }) => {\n useEffect(() => {\n if (max && toasts.length > max)\n onClose(toasts[0].key);\n }, [toasts, max, onClose]);\n return createPortal(React.createElement(ToastsLayoutContainer, { direction: \"vertical\", alignX: \"center\", spacing: 4 },\n React.createElement(TransitionGroup, { component: null }, [...toasts].reverse().map((toast, index) => (React.createElement(CSSTransition, { key: toast.key, timeout: 500, classNames: \"veeqo-components-toast\" },\n React.createElement(Toast, Object.assign({ className: className, e2eClassName: e2eClassName, minWidth: minWidth, last: index === toasts.length - 1, onClose: () => onClose(toast.key) }, toast))))))), document.body);\n};\n//# sourceMappingURL=ToastsLayout.js.map","import React from 'react';\nimport { StyledButton } from './styled';\nexport const ToggleButton = ({ children, checked, size = 'base', disabled = false, onChange, }) => (React.createElement(StyledButton, { type: \"button\", checked: checked, size: size, disabled: disabled, \"aria-pressed\": checked, tabIndex: \"0\", onClick: () => onChange(!checked) }, children));\n//# sourceMappingURL=ToggleButton.js.map","import React from 'react';\nimport { Popup } from './components/Popup';\nimport { PopupContent, VideoWrapper, ButtonSC } from './styled';\nimport { useClickOutside } from '../../hooks';\nimport { CrossIcon } from '../../tempIcons/CrossIcon';\nexport const VideoModal = ({ id, youtubeVideoId, showVideoModal, handleCloseClick, }) => {\n const ref = useClickOutside(showVideoModal, handleCloseClick);\n return (React.createElement(Popup, { shouldShow: showVideoModal, className: `${id}-video` },\n React.createElement(PopupContent, { \"data-testid\": \"video-modal_popup-content\", className: `video-modal--${showVideoModal ? 'visible' : 'hidden'}` },\n React.createElement(VideoWrapper, { ref: ref },\n React.createElement(\"iframe\", { title: `${id}-video`, src: `https://www.youtube.com/embed/${youtubeVideoId}`, frameBorder: \"0\", allow: \"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\", allowFullScreen: true }),\n React.createElement(ButtonSC, { variant: \"flat\", onClick: handleCloseClick, \"data-testid\": \"video-modal--close\", icon: React.createElement(CrossIcon, { color: \"white\" }) })))));\n};\n//# sourceMappingURL=VideoModal.js.map","import { useState, useEffect } from 'react';\nexport const useDebounce = (value, timeout) => {\n const [state, setState] = useState(value);\n useEffect(() => {\n // Set timeout to run after delay\n const handler = setTimeout(() => setState(value), timeout);\n // clear the setTimeout listener on unMount\n return () => clearTimeout(handler);\n }, [value, timeout]);\n return state;\n};\n//# sourceMappingURL=useDebounce.js.map","import { useState } from 'react';\nexport function useNested() {\n const [expandedRowIds, setExpandedRowIds] = useState([]);\n // TODO: Memoise this\n const setExpanded = (expanded, rowId) => {\n if (!rowId)\n return;\n if (expanded) {\n // Add rowId to expandedRowIds\n if (expandedRowIds.includes(rowId))\n return;\n const rowIds = [...expandedRowIds, rowId];\n setExpandedRowIds(rowIds);\n }\n else {\n // Remove rowIds from expandedRowIds\n const index = expandedRowIds.findIndex((id) => id === rowId);\n if (index < 0)\n return;\n const rowIds = [...expandedRowIds];\n rowIds.splice(index, 1);\n setExpandedRowIds(rowIds);\n }\n };\n return {\n nestedTableProps: {\n expandedRowIds,\n setExpanded,\n },\n };\n}\n//# sourceMappingURL=useNested.js.map","import { useState } from 'react';\nexport const useTabs = (tabs, config) => {\n const { defaultActiveIndex = 0 } = config || {};\n const [listOfTabs] = useState(tabs);\n const [active, setActive] = useState(listOfTabs[defaultActiveIndex]);\n return [\n active,\n (key) => {\n const newActiveTab = listOfTabs.find((tab) => tab.key === key);\n if (newActiveTab) {\n setActive(newActiveTab);\n }\n },\n ];\n};\n//# sourceMappingURL=useTabs.js.map","import React, { useEffect } from 'react';\nexport const withDeprecated = (Component) => (props) => {\n useEffect(() => {\n // eslint-disable-next-line no-console\n console.warn(`${Component.name} is deprecated.`);\n }, []);\n return React.createElement(Component, Object.assign({}, props));\n};\n//# sourceMappingURL=withDeprecated.js.map"],"names":["BaseContainer","styled","default","div","withConfig","displayName","componentId","componentMap","inputLabel","inputLabelSmall","headingSmall","headingMedium","headingLarge","headingXL","headingXXL","button","buttonSmall","getComponentOverride","as","variant","colors","brand","blue","lightest","light","base","dark","darkest","peach","neutral","ink","grey","greyBlue","secondary","red","yellow","green","lime","teal","aqua","purple","pink","orange","system","scrollbar","thumb","background","breakpoints","mobile","tablet","lgTablet","desktop","lgDesktop","radius","sm","md","lg","full","Shadows","SizeAlias","sizeScale","increment","unit","count","sizes","i","value","buildSizeScale","sizeAliases","none","line","xs","xl","xxl","Object","assign","common","fontFamily","text","fontStyle","fontWeight","fontSize","lineHeight","color","textDecoration","letterSpacing","headingTable","subheadingLarge","subheadingMedium","subheadingSmall","subheadingSmallBold","body","bodySmall","bodyBold","bodyBoldDark","bodySmallBold","linkLarge","linkMedium","link","linkSmall","hintText","placeholder","placeholderSmall","placeholderCode","placeholderCodeSmall","error","errorSmall","successSmall","theme","layers","popup","modal","tooltip","shadows","Text","span","attrs","muted","TapBarChild","Left","glyphColor","Right","AccordionSummary","summary","Top","Description","AccordionContent","motion","AccordionDetails","details","UpArrowIcon","props","React","createElement","viewBox","fill","xmlns","role","height","fillRule","clipRule","d","__assign","t","s","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__rest","e","indexOf","getOwnPropertySymbols","propertyIsEnumerable","_extends","bind","target","source","key","SuppressedError","process","env","NODE_ENV","reactIsModule","exports","b","Symbol","for","c","f","g","h","k","l","m","q","r","v","w","x","y","z","a","u","$$typeof","type","A","reactIs_production_min","AsyncMode","ConcurrentMode","ContextProvider","Element","ForwardRef","Fragment","Memo","Portal","Profiler","StrictMode","Suspense","isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isFragment","isLazy","isMemo","isProfiler","isStrictMode","isSuspense","isValidElementType","typeOf","require$$0","hasSymbol","REACT_ELEMENT_TYPE","REACT_PORTAL_TYPE","REACT_FRAGMENT_TYPE","REACT_STRICT_MODE_TYPE","REACT_PROFILER_TYPE","REACT_PROVIDER_TYPE","REACT_CONTEXT_TYPE","REACT_ASYNC_MODE_TYPE","REACT_CONCURRENT_MODE_TYPE","REACT_FORWARD_REF_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_MEMO_TYPE","REACT_LAZY_TYPE","REACT_BLOCK_TYPE","REACT_FUNDAMENTAL_TYPE","REACT_RESPONDER_TYPE","REACT_SCOPE_TYPE","object","$$typeofType","ContextConsumer","Lazy","hasWarnedAboutDeprecatedIsAsyncMode","reactIs_development","console","isPortal","propIsEnumerable","objectAssign","test1","String","getOwnPropertyNames","test2","fromCharCode","map","join","test3","split","forEach","letter","keys","err","shouldUseNative","from","symbols","to","val","TypeError","toObject","ReactPropTypesSecret_1","has","Function","ReactIs","propTypesModule","require$$1","ReactPropTypesSecret","require$$2","require$$3","checkPropTypes","printWarning","loggedTypeFailures","message","Error","typeSpecs","values","location","componentName","getStack","typeSpecName","name","ex","stack","resetWarningCache","checkPropTypes_1","require$$4","emptyFunctionThatReturnsNull","factoryWithTypeCheckers","isValidElement","throwOnDirectAccess","ITERATOR_SYMBOL","iterator","FAUX_ITERATOR_SYMBOL","ANONYMOUS","ReactPropTypes","array","createPrimitiveTypeChecker","bigint","bool","func","number","string","symbol","any","createChainableTypeChecker","arrayOf","typeChecker","propName","propFullName","PropTypeError","propValue","Array","isArray","getPropType","element","elementType","instanceOf","expectedClass","expectedClassName","constructor","node","isNode","objectOf","propType","oneOf","expectedValues","is","valuesString","JSON","stringify","getPreciseType","oneOfType","arrayOfTypeCheckers","checker","getPostfixForTypeWarning","expectedTypes","checkerResult","data","push","expectedType","shape","shapeTypes","invalidValidatorError","exact","allKeys","validate","manualPropTypeCallCache","manualPropTypeWarningCount","checkType","isRequired","secret","cacheKey","chainedCheckType","every","iteratorFn","maybeIterable","getIteratorFn","step","entries","next","done","entry","RegExp","isSymbol","Date","PropTypes","emptyFunction","emptyFunctionWithReset","factoryWithThrowingShims","shim","getShim","FOCUS_GROUP","FOCUS_DISABLED","useMergeRefs","refs","defaultValue","initialValue","callback","newValue","ref","current","assignRef","useState","facade","last","hiddenGuard","width","padding","overflow","position","top","left","ItoI","innerCreateMedium","defaults","middleware","buffer","assigned","read","useMedium","item","filter","assignSyncMedium","cb","cbs","assignMedium","pendingQueue","executeQueue","cycle","Promise","resolve","then","createMedium","mediumFocus","_ref","currentTarget","mediumBlur","mediumEffect","mediumSidecar","options","medium","async","ssr","createSidecarMedium","emptyArray","FocusLock","forwardRef","parentRef","_extends2","_React$useState","realObserved","setObserved","observed","useRef","isActive","originalFocusedElement","children","_props$disabled","disabled","_props$noFocusGuards","noFocusGuards","_props$persistentFocu","persistentFocus","_props$crossFrame","crossFrame","_props$autoFocus","autoFocus","allowTextSelection","group","className","whiteList","hasPositiveIndices","_props$shards","shards","_props$as","Container","_props$lockProps","lockProps","containerProps","SideCar","sideCar","_props$returnFocus","returnFocus","shouldReturnFocus","focusOptions","onActivationCallback","onActivation","onDeactivationCallback","onDeactivation","id","useCallback","document","activeElement","useEffect","allowDefer","returnFocusTo","focus","howToReturnFocus","returnFocusOptions","undefined","onFocus","event","onBlur","setObserveNode","newObserved","warn","constants.FOCUS_DISABLED","constants.FOCUS_GROUP","hasLeadingGuards","hasTailingGuards","mergedRef","tabIndex","style","propTypes","FocusLockUI","_setPrototypeOf","o","setPrototypeOf","__proto__","_typeof","_toPropertyKey","arg","input","hint","prim","toPrimitive","res","Number","toArray","ret","asArray","getFirst","getParentNode","parentNode","nodeType","Node","DOCUMENT_FRAGMENT_NODE","host","isTopNode","DOCUMENT_NODE","isVisibleUncached","checkParent","ELEMENT_NODE","computedStyle","window","getComputedStyle","getPropertyValue","isElementHidden","isVisibleCached","visibilityCache","cached","get","result","set","isAutoFocusAllowedCached","cache","isAutoFocusAllowed","isAutoFocusAllowedUncached","getDataset","dataset","isHTMLInputElement","tagName","isRadioElement","attribute","getAttribute","includes","isGuard","_a","Boolean","focusGuard","isNotAGuard","isDefined","tabSort","tabDiff","indexDiff","index","orderByTabIndex","nodes","filterNegative","keepGuards","sort","queryTabbables","queryGuardTabbables","concat","getFocusablesWithShadowDom","parent","withGuards","shadowRoot","reduce","acc","child","matches","getFocusables","parents","focusableWithShadowDom","focusableWithIframes","HTMLIFrameElement","contentDocument","getFocusablesWithIFrame","querySelectorAll","filterFocusable","isHTMLButtonElement","notHiddenInput","filterAutoFocusable","Map","getTabbableNodes","topNodes","getFocusableNodes","parentAutofocusables","topNode","parentFocus","contains","scope","getPrototypeOf","some","iframeBody","getTopParent","getAllAffectedNodes","currentNode","contained","Set","j","compareDocumentPosition","DOCUMENT_POSITION_CONTAINED_BY","add","DOCUMENT_POSITION_CONTAINS","_","filterNested","getActiveElement","inDocument","safeProbe","contentWindow","focusInside","ownerDocument","frame","focusInFrame","focusInsideIframe","correctNode","el","checked","findSelectedRadio","pickFirstFocus","pickFocusable","NEW_FOCUS","newFocus","innerNodes","outerNodes","lastNode","cnt","firstFocus","lastFocus","isOnGuard","resultSet","activeIndex","lastIndex","lastNodeInside","firstNodeIndex","lastNodeIndex","correctedNodes","correctedIndexDiff","returnFirstNode","returnLastNode","Math","abs","pickAutofocus","nodesIndexes","orderedNodes","groups","autoFocusables","autoFocusable","autofocus","getParents","getCommonParent","nodeA","nodeB","parentsA","parentsB","currentParent","getTopCommonParent","baseActiveElement","leftEntry","rightEntries","activeElements","leftEntries","topCommon","subEntry","focusSolver","commonParent","anyFocusable","innerElements","srcNodes","dstNodes","remap","orderedInnerElements","entity","newId","focusNode","allParentAutofocusables","guardCount","lockDisabled","moveFocusInside","focusable","setTimeout","deferAction","action","isFreeFocus","focusIsHidden","lastActiveTrap","lastActiveFocus","lastPortaledElement","focusWasOutsideWindow","defaultWhitelist","autoGuard","startIndex","end","allNodes","lastGuard","guard","focusAutoGuard","lockItem","extractRef","checkInHost","check","boundary","activateTrap","_lastActiveTrap","workingNode","portaledElement","workingArea","focusWhitelisted","area","withinHost","blur","newActiveElement","focusedIndex","_ref2","_ref3","removeAttribute","onTrap","stopPropagation","preventDefault","onWindowBlur","observerNode","FocusTrap","reducePropsToState","handleStateChangeOnClient","WrappedComponent","state","mountedInstances","emitChange","instance","obj","SideEffect","_PureComponent","subClass","superClass","create","peek","_proto","componentDidMount","componentDidUpdate","componentWillUnmount","splice","render","PureComponent","getDisplayName","toPropertyKey","defineProperty","enumerable","configurable","writable","withSideEffect","propsList","_ref5","traps","trap","slice","addEventListener","lastTrap","sameTrap","_ref6","removeEventListener","FocusLockCombination","excluded","sourceKeys","_objectWithoutPropertiesLoose","generateId","prefix","floor","random","super","portalNode","isMounted","rootElementRef","setAttribute","cssText","appendChild","setState","removeChild","createPortal","PopoverDialog","dialog","zIndex","Backdrop","buildClassnames","names","hexToRgb","hex","hexTmp","replace","exec","parseInt","getOpaqueHexColor","opacity","rgb","Popover","passedId","placement","anchorElement","onShouldClose","disableFocusLock","dialogProps","popperElement","setPopperElement","styles","attributes","update","usePopper","useMemo","popoverId","hasAttribute","useUpdateAriaAnchor","resizeObserver","ResizeObserver","observe","disconnect","onClose","onClick","open","popper","onKeyDown","TailSpin","label","x1","y1","x2","y2","stopColor","stopOpacity","offset","transform","stroke","strokeWidth","attributeName","dur","repeatCount","cx","cy","Grid","begin","calcMode","ThreeDots","Loader","MainContent","hasText","loading","size","BaseButton","paddingLeft","paddingRight","borderRadius","outlineWidth","hasIcon","hasDropdown","DefaultButton","DefaultDestructiveButton","PrimaryButton","PrimaryDestructiveButton","FlatButton","UnstyledButton","LinkButton","LoadingWrapper","DropdownIcon","variantMap","primary","destructive","primaryDestructive","flat","unstyled","Button","icon","dropdown","otherProps","VariantButton","hasChildren","Header","header","HeaderGrid","DownArrowIcon","CrossIcon","CardHeader","title","subtitle","headerVariant","ActionSlot","isCollapsed","onClickCollapse","onClickClose","elevationShadowMap","accents","info","success","Footer","footer","Section","section","FullBleed","Body","Surface","elevation","accent","collapseAnimationVariants","expanded","collapsed","Card","HeaderActionSlot","collapsable","renderFooter","setIsCollapsed","headerMarkup","showBody","bodyMarkup","animate","variants","transition","duration","ease","footerMarkup","ListCard","SectionHeading","Item","itemMap","ActionList","items","sections","buttonVariant","buttonSize","setIsActive","anchorEl","setAnchorEl","renderItem","ItemComponent","handleClick","listItemMarkup","CommonAnchor","BasicDropdown","BasicContainer","Wrap","Dropdown","reversed","AnimatedDropdown","cta","shouldShowDropdown","onClickAway","timeout","transitionClassnames","onMouseEnter","onMouseLeave","dropdownRef","handleClickAway","useClickAway","CSSTransition","in","classNames","unmountOnExit","AvatarSC","textColor","bgColor","Position","Sides","Hoverable","TooltipText","Triangle","Tip","tipMinWidth","tipMaxWidth","defaultConfig","side","TOP","triangleOffset","Tooltip","content","config","withTriangle","initialShouldShow","useReactPortal","trim","usedConfig","container","tip","wrap","triangle","hoverable","shouldShow","setShouldShow","hoverableElement","setHoverableElement","modifiers","show","hide","tooltipStyles","tooltipMarkup","triangleOffsetSize","ReactDOM","BaseBadge","hideBorder","warning","BannerLayout","accentColor","backgroundColor","Row","Col","IconCol","ChildContainer","HeaderCol","StyledText","accentColors","help","BreadcrumbsSC","ul","BreadcrumbSC","li","RightArrowIcon","Breadcrumb","LinkComponent","href","DefaultSeparator","DefaultLink","BreadcrumbText","Alignments","Stack","direction","alignX","alignY","spacing","alignItems","justifyContent","flexDirection","itemFlex","marginTop","marginLeft","alignMap","center","RootLayout","InputLayout","align","AccessoryLayout","TextLayout","LabelText","HintText","ErrorText","Wrapper","BorderedWrapper","BlockTooltip","HelpIcon","Choice","bordered","Badge","Accessory","contentMarkup","htmlFor","Input","Checkbox","indeterminate","ariaLabel","onChange","checkboxRef","handleChange","Radio","Fieldset","fieldset","Legend","legend","ChoiceList","Component","allowMultiple","handleChangeMultiple","handleChangeSingle","selected","newSelected","selectedValue","InputComponent","option","SuccessIcon","ClipboardIcon","iconSizes","XSButton","alignmentToFlex","parseWidth","fallback","min","max","generateTableCss","pinnedLeft","pinnedRight","cellWidths","scrollPosition","visible","stripingMode","pinnedLeftStyles","sumAllBeforeIndex","pinnedRightStyles","sumAllAfterIndex","isLeftShadowVisible","leftShadow","isRightShadowVisible","rightShadow","stripingRow","stripingNested","col","SortDirection","DoubleArrowIcon","ArrowUpIcon","ArrowDownIcon","GetSortIcon","sortState","columnId","ascending","useCellWidths","tableRef","containerRef","setCellWidths","updateCellWidths","cells","widths","cell","getBoundingClientRect","resizeObserverCallback","throttle","useColumns","columns","hidden","pinned","notPinned","useDragToScroll","targetRef","isDragging","scrollTarget","mouseMoveHandler","dx","clientX","scrollLeft","cursor","userSelect","mouseUpHandler","removeProperty","mouseDownHandler","useScrollPosition","setScrollPosition","updateScrollPosition","scrollWidth","headerCellHeight","th","SelectionHeader","selectionMode","headerProps","Cell","td","SelectionCell","rowId","cellProps","emptySelectionState","useSelection","selectionState","enabledRowIds","selectionEnabled","selectedRowIds","setSelectedRowIds","toggleAllSelected","selectionColumn","renderHeader","column","renderCell","row","actions","rowState","setSelected","rowIds","findIndex","SortIndicator","HeaderContent","ClickableHeaderContent","onChangeSort","sortable","toString","ColumnHeaderContent","columnHeaderProps","log","nextSortState","isColumnSame","isDefaultDirection","newSortDirection","descending","getNextSortState","shimmerLight","shimmerDark","LoadingCellContent","Content","ActionBar","intersectionTargetRef","isSticky","setIsSticky","intersectionObserver","IntersectionObserver","isIntersecting","containerRect","stickyPositionStyles","right","VisiblityIcon","VisiblityOffIcon","ReorderIcon","EmptyBodyContent","columnCount","EmptyBodyGlyphWrapper","NoWrap","tr","ScrollContainer","TableGrid","table","css","Truncate","borderModeStyles","vertical","borderMode","StickyHead","tableCss","stickyContainerRef","isVisible","setIsVisible","setContainerRect","updateContainerDimensions","targetRect","newRect","updateContainerScrollPosition","xScrollOffset","scrollTo","threshold","containerStyle","overflowX","overflowY","borderBottom","allCss","getRowState","expandedRowIds","disabledRowIds","InfoIcon","defaultEmptyState","heading","emptyAction","DataTable","ActionBarSlot","emptyState","loadingRowCount","rows","setExpanded","enableStickyHeader","scrollContainerRef","columnsWithSelection","allColumns","loadingRows","renderLoadingCell","subheading","renderRow","e2eClassName","renderNestedRow","nestedRow","_b","nestedRowE2eClassName","e2eClassNames","renderNestedCell","renderSection","isExpanded","nestedRows","headersMarkup","shouldRenderFooter","shouldRenderActionBar","hasNestedRows","renderBody","footerProps","defaultProps","ColumnMenu","columnGroups","setColumns","popoverAnchor","setPopoverAnchor","showPopover","setShowPopover","columnEntries","columnsMap","fromEntries","setHidden","groupIndex","columnIds","newColumns","border","flex","List","dl","ItemRow","DescriptionContainer","Term","dt","dd","ColumnGrid","showSidebar","ContentContainer","InputGroup","ComponentSize","Label","Hint","RootStack","withLabels","hasError","pseudoStates","inputSize","Textarea","textarea","NUMBER_REGEX","TextField","multiline","pattern","spellCheck","test","StyledTextField","StyledButton","DimensionsInput","handleChangeHeight","handleChangeWidth","handleChangeLength","rest","useClickOutside","isOpen","escapeListener","clickListener","useDropdown","setShouldShowDropdown","toggleShouldShowDropdown","closeDropdown","FocusVisibleContext","createContext","hadKeyboardEvent","isInitialized","useHover","initialState","isHovered","setIsHovered","useIsOverflowing","isOverflowing","setIsOverflowing","isAtBottom","setIsAtBottom","hasOverflow","scrollHeight","clientHeight","onScroll","scrollTop","NonSelectableText","GroupLabel","MainIcon","StyledCrossIcon","generateClassNames","filterTagDropdown","cross","PlaceholderImage","CommonImage","img","previewEnabled","PreviewImageContainer","PreviewImage","image","previewImageContainer","iconSize","defaultErrorState","subTitle","ScrollPosition","fixedColumnShadow","TooltipContent","scrollDisabled","showScrollbar","lastStartFixedColumnsIndex","firstEndFixedColumnsIndex","middle","start","WrapperBordered","Head","thead","tbody","fixedColumnsStyle","tfoot","grow","HeaderCell","alignmentMap","HeaderCellLayout","Table","isFixedLayout","striped","tableLoading","noWrap","StickyHeaderWrapper","FakeHeaderTable","SpecificStateContainer","EllipseContainer","TitleText","SubTitleText","SpecificState","CellButton","ClickableButton","SkeletonContentWrapper","SkeletonContentComponent","isLoading","SkeletonContent","SkeletonCell","StickyHeader","wrapperRef","wrapperStyle","headerWrapperRef","setHeaderWrapperRef","topOffset","handleScrollChange","bottom","sticky","useStickyHeader","wrapperWidth","useScroll","updateScroll","tableLayout","convertFixedColumnInlineStyleToStyled","SkeletonHeaderCell","DoubleArrowAscIcon","DoubleArrowDescIcon","IconUnsorted","IconSortAsc","IconSortDesc","LegacyDataTable","borderless","headers","renderLoadingRow","renderFooterRow","renderFooterLoadingRow","omitFooterSelectionCell","disabledSelectionInputRowIds","onChangeSelectedRowIds","sortColumnId","sortDirection","isError","skeletonRowsNumber","isHeaderSticky","stickyHeaderStyle","customSpecificState","bodyHeightInSpecificStates","startFixedColumnsNumber","endFixedColumnsNumber","WrapperComponent","isEmpty","isFixedColumnsNotEnabled","refValue","handleScroll","scrollValue","castWidthToNumber","generateFixedColumnInlineStyle","generateFixedColumnsStyle","startColumns","endColumns","totalStartOffset","totalEndOffset","headerWidth","handleSelectRow","newSelectedRowIds","handleSelectAll","handleClickSortableHeader","nextColumnId","nextDirection","renderHeaderCell","sortIcon","headerContents","renderSkeletonHeaderCell","selectionCellStyle","startHeaderIndex","endHeaderIndex","headerCellStyle","find","skeleton","skeletonStyle","renderSelectionInput","isSelected","inputProps","renderSkeletonSelectionInput","rowIndex","generalStyle","margin","animationDuration","getNestedRow","isHidden","renderDefaultLoadingRow","unshift","getFooter","renderedRows","_c","bodyClassName","rowE2eClassName","rowClassName","specificStateValues","ClickableCell","EditableCell","LoginButton","buttonImg","buttonDescription","NonScrollableBody","createGlobalStyle","MainSection","fullBleed","isScrollable","hasFooterSlot","footerSlot","heightMap","widthMap","fullScreenBreakpointMap","StyledDialog","initial","bounce","exit","Dialog","shadow","Title","h1","Subtitle","Image","ActionsContainer","SidebarToggleButton","LeftArrowIcon","PageLimitContainer","PaginationButton","PageInput","PageCount","usePagination","currentPage","totalPagesCount","handleChangePage","pageInputValue","setPageInputValue","validatePageValue","handleSubmit","handleIncrement","handleDecrement","handleInputChange","intValue","newPage","handleFormSubmit","StartArrowIcon","EndArrowIcon","paginationDefaultRangeList","handleRangeListChange","Items","paginationRange","PaginationRange","onPaginationRangeChange","setDropdownValue","currentValue","dropdownValue","toggleShouldShow","reversedDropdown","StepButton","Stepper","onIncrement","onDecrement","PrefixContainer","PrefixText","PriceInputGroup","PriceInput","currency","onPriceChange","priceValue","parseFloat","toFixed","roundedValue","form","IconContainer","iconPosition","SearchIcon","buttonBackgroundColor","buttonBorderColor","activeButtonColor","SegmentedControlContainer","SelectInput","select","sizeVariant","Select","TableHeader","TableBody","TableRow","TableCell","TableHeaderCell","SimpleTable","SliderContainer","SLIDER_SIZE","SliderTrack","SliderDiv","SliderRange","sliderRange","slider","startSlider","endSlider","Tag","ToastsLayoutContainer","Toast","minWidth","IconWrap","ContentStack","toastTypes","merge","closeIcon","iconSlot","ToastContainer","Slider","switched","Switch","small","Toggle","borderColor","commonStyles","Shadow","WithPortal","usePortal","Popup","ScrollLock","PopupContent","VideoWrapper","ButtonSC","ViewTypes","CounterText","Contour","colourPalette","customTextColour","active","CounterContainer","IconStyling","CustomIconWrapper","EditIcon","delete","edit","counter","WeightInput","weightUnit","handleChangeGram","gram","isWeightImperial","handleChangePound","pound","handleChangeOunce","ounce","description","shouldOpenOnMount","shouldOpen","setShouldOpen","rotate","userInitials","toUpperCase","match","BadgeVariant","Pill","marginRight","Separator","pathname","onCopy","copied","setCopied","handleCopy","navigator","clipboard","writeText","horizontal","renderDescription","term","shouldShowSidebar","setShouldShowSidebar","shouldCloseOnClickAway","setHadKeyboardEvent","onPointerDown","onInitialPointerMove","nodeName","toLowerCase","removeInitialPointerMoveListeners","addInitialPointerMoveListeners","metaKey","altKey","ctrlKey","onVisibilityChange","visibilityState","Provider","src","alt","previewWidth","previewHeight","previewPlacement","placeholderWidth","placeholderHeight","disablePlaceholder","isPreviewOpen","setIsPreviewOpen","imageState","setImageState","isLoaded","referenceElement","setReferenceElement","openImagePreview","closeImagePreview","isImageHidden","onLoad","onError","display","setImage","onMouseDown","onMouseUp","showHeaderCloseButton","parentOnClose","modalRef","mainSectionRef","setMainSectionRef","showModal","isContentOverflowing","close","AnimatePresence","headerSlot","hasHeaderSlot","headerTitle","headerSubtitle","leftActions","rightActions","actionProps","imageSrc","quickActions","backAction","onClickPrevious","onClickNext","onClickToggleSidebar","actionsMarkup","quickActionsMarkup","backActionMarkup","toggleSidebarMarkup","testId","onSubmit","onClearClick","onKeyUp","onKeyPress","autoComplete","shouldShowClear","onSlideStart","onSlideEnd","setIsDragging","draggingSliderIndex","setDraggingSliderIndex","startSliderRef","endSliderRef","handleMouseMove","sliderValue","containerSize","pageX","diff","ceil","decimalPlaces","pop","resultValue","handleMouseUp","handleMouseDown","handleStartSliderMouseDown","handleEndSliderMouseDown","startSliderEl","endSliderEl","renderSlider","valueNow","sliderClassName","renderRangeSlider","rangeSliderValue","handleValueStart","handleValueEnd","rangeWidth","handleValue","renderSingleSlider","toasts","TransitionGroup","component","reverse","toast","youtubeVideoId","showVideoModal","handleCloseClick","frameBorder","allow","allowFullScreen","onDelete","onEdit","handleEnter","handleLeave","handleDelete","handleEdit","isDraft","draft","isSaved","saved","handler","clearTimeout","isFocused","setIsFocused","useContext","focusVisible","setExpandedRowIds","nestedTableProps","tabs","defaultActiveIndex","listOfTabs","setActive","newActiveTab","tab"],"mappings":"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","x_google_ignoreList":[13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63]}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/components/BaseContainer/BaseContainer.ts","../src/components/Text/utils.ts","../src/theme/modules/colors.ts","../src/theme/modules/breakpoints.ts","../src/theme/modules/radius.ts","../src/theme/modules/shadows.ts","../src/theme/modules/sizes.ts","../src/theme/modules/text.ts","../src/theme/index.ts","../src/theme/modules/layers.ts","../src/components/Text/Text.ts","../src/components/Accordion/styled.ts","../src/tempIcons/UpArrowIcon.tsx","../node_modules/tslib/tslib.es6.js","../src/utils/generateId.ts","../src/components/Portal/Portal.tsx","../src/components/Popover/styled.ts","../src/utils/buildClassnames.ts","../src/utils/color.ts","../src/components/Popover/hooks/useHandleFocus.ts","../src/components/Popover/Popover.tsx","../src/components/Popover/hooks/useUpdateAriaAnchor.ts","../src/components/Loader/TailSpin.tsx","../src/components/Loader/Grid.tsx","../src/components/Loader/ThreeDots.tsx","../src/components/Loader/Loader.tsx","../src/components/Button/components/styled.ts","../src/tempIcons/DropdownIcon.tsx","../src/components/Button/Button.tsx","../src/components/CardHeader/styled.ts","../src/tempIcons/DownArrowIcon.tsx","../src/tempIcons/CrossIcon.tsx","../src/components/CardHeader/CardHeader.tsx","../src/components/Card/styled.ts","../src/components/Card/Card.tsx","../src/components/ActionList/styled.ts","../src/components/ActionList/ActionList.tsx","../src/components/Anchor/styled.ts","../src/components/AnimatedDropdown/components/styled.ts","../src/components/AnimatedDropdown/components/BasicDropdown.tsx","../src/components/AnimatedDropdown/styled.ts","../src/components/AnimatedDropdown/AnimatedDropdown.tsx","../src/components/AnimatedDropdown/hooks/useClickAway.ts","../src/components/Avatar/styled.ts","../src/components/Tooltip/types.ts","../src/components/Tooltip/styled.ts","../src/components/Tooltip/Tooltip.tsx","../src/components/Badge/styled.ts","../src/components/Badge/Badge.tsx","../src/components/Banner/styled.ts","../src/components/Banner/Banner.tsx","../src/components/Breadcrumbs/components/styled.ts","../src/tempIcons/RightArrowIcon.tsx","../src/components/Breadcrumbs/components/Breadcrumb.tsx","../src/components/Breadcrumbs/Breadcrumbs.tsx","../src/components/Stack/Alignments.ts","../src/components/Stack/Stack.tsx","../src/components/Choice/components/styled.ts","../src/tempIcons/HelpIcon.tsx","../src/components/Choice/Choice.tsx","../src/components/Checkbox/styled.ts","../src/components/Checkbox/Checkbox.tsx","../src/components/Radio/styled.ts","../src/components/Radio/Radio.tsx","../src/components/ChoiceList/styled.ts","../src/components/ChoiceList/ChoiceList.tsx","../src/tempIcons/SuccessIcon.tsx","../src/tempIcons/ClipboardIcon.tsx","../src/components/CopyToClipboard/CopyToClipboard.tsx","../src/components/DataTable/utils/alignmentToFlex.ts","../src/components/DataTable/utils/parseWidth.ts","../src/components/DataTable/utils/generateTableCss.ts","../src/components/DataTable/utils/sumAll.ts","../src/components/DataTable/types.ts","../src/tempIcons/DoubleArrowIconIcon.tsx","../src/tempIcons/ArrowUpIcon.tsx","../src/tempIcons/ArrowDownIcon.tsx","../src/components/DataTable/utils/GetSortIcon.tsx","../src/components/DataTable/hooks/useCellWidths.ts","../src/components/DataTable/hooks/useColumns.ts","../src/components/DataTable/hooks/useDragToScroll.ts","../src/components/DataTable/hooks/useScrollPosition.ts","../src/components/DataTable/constants.ts","../src/components/DataTable/components/Header.ts","../src/components/DataTable/components/SelectionHeader.tsx","../src/components/DataTable/components/Cell.ts","../src/components/DataTable/components/SelectionCell.tsx","../src/components/DataTable/hooks/useSelection.tsx","../src/components/DataTable/components/ColumnHeader.tsx","../src/components/DataTable/renderers/renderHeader.tsx","../src/components/DataTable/utils/getNextSortState.ts","../src/components/DataTable/components/LoadingCellContent.ts","../src/components/DataTable/components/ActionBar.tsx","../src/tempIcons/VisibilityIcon.tsx","../src/tempIcons/VisibilityOffIcon.tsx","../src/tempIcons/ReorderIcon.tsx","../src/components/DataTable/components/EmptyBodyContent.ts","../src/components/DataTable/components/NoWrap.ts","../src/components/DataTable/components/Row.ts","../src/components/DataTable/components/ScrollContainer.ts","../src/components/DataTable/components/TableGrid.ts","../src/components/DataTable/components/Truncate.ts","../src/components/DataTable/components/Wrapper.ts","../src/components/DataTable/components/StickyHead.tsx","../src/components/DataTable/utils/getRowState.ts","../src/tempIcons/InfoIcon.tsx","../src/components/DataTable/DataTable.tsx","../src/components/DataTable/renderers/renderLoadingCell.tsx","../src/components/DataTable/renderers/renderCell.ts","../src/components/DataTable/renderers/renderNestedCell.tsx","../src/components/DataTable/renderers/renderFooter.tsx","../src/components/DataTable/components/ColumnMenu.tsx","../src/components/DescriptionList/DescriptionList.tsx","../src/components/DetailPage/styled.ts","../src/components/InputGroup/index.ts","../src/components/types.ts","../src/hoc/withLabels/styled.ts","../src/hoc/withLabels/withLabels.tsx","../src/components/TextField/styled.ts","../src/components/TextField/TextField.tsx","../src/components/TextField/index.ts","../src/components/DimensionsInput/styled.ts","../src/components/DimensionsInput/DimensionsInput.tsx","../src/hooks/useClickOutside.ts","../src/hooks/useDropdown.ts","../src/hooks/useFocusVisible.tsx","../src/hooks/useHover.ts","../src/hooks/useIsOverflowing.ts","../src/components/FilterTag/styled.ts","../src/components/FilterTag/FilterTag.tsx","../src/components/Grid/index.ts","../src/components/Image/components/PlaceholderImage.tsx","../src/components/Image/components/styled.ts","../src/components/Image/utils.ts","../src/components/LegacyDataTable/utils/constants.tsx","../src/tempIcons/CalendarIcon.tsx","../src/tempIcons/FailIcon.tsx","../src/components/LegacyDataTable/styled.ts","../src/components/LegacyDataTable/SpecificState/styled.ts","../src/components/LegacyDataTable/SpecificState/SpecificState.tsx","../src/components/LegacyDataTable/cells/styled.ts","../src/components/LegacyDataTable/cells/ClickableCell.tsx","../src/components/LegacyDataTable/cells/EditableCell.tsx","../src/components/LegacyDataTable/SkeletonContent/SkeletonContent.tsx","../src/components/LegacyDataTable/cells/SkeletonCell.tsx","../src/components/LegacyDataTable/utils/hooks.ts","../src/components/LegacyDataTable/StickyHeader.tsx","../src/components/LegacyDataTable/utils/index.ts","../src/components/LegacyDataTable/cells/SkeletonHeaderCell.tsx","../src/tempIcons/DoubleArrowAscIcon.tsx","../src/tempIcons/DoubleArrowDescIcon.tsx","../src/components/LegacyDataTable/LegacyDataTable.tsx","../src/components/LoginWithAmazonButton/styled.ts","../src/components/LoginWithAmazonButton/LoginWithAmazonButton.tsx","../src/components/Modal/components/styled.ts","../src/components/Modal/types.ts","../src/components/Modal/components/Dialog/constants.ts","../src/components/Modal/components/Dialog/styled.ts","../src/components/Modal/components/Dialog/Dialog.tsx","../src/components/PageHeader/styled.ts","../src/tempIcons/LeftArrowIcon.tsx","../src/components/Pagination/styled.ts","../src/components/Pagination/components.tsx","../src/components/Pagination/hooks/usePagination.ts","../src/tempIcons/StartArrowIcon.tsx","../src/tempIcons/EndArrowIcon.tsx","../src/utils/paginationList.ts","../src/components/PaginationRange/styled.ts","../src/components/PaginationRange/Items/Item/styled.ts","../src/components/PaginationRange/Items/Item/Item.tsx","../src/components/PaginationRange/Items/Items.tsx","../src/components/PaginationRange/PaginationRange.tsx","../src/components/Stepper/styled.ts","../src/components/Stepper/Stepper.tsx","../src/components/PriceInput/styled.ts","../src/components/PriceInput/PriceInput.tsx","../src/components/Search/styled.ts","../src/tempIcons/SearchIcon.tsx","../src/components/SegmentedControl/styled.ts","../src/components/Select/styled.ts","../src/components/Select/Select.tsx","../src/components/SimpleTable/styled.ts","../src/components/SimpleTable/SimpleTable.tsx","../src/components/Slider/styled.ts","../src/components/Slider/Slider.tsx","../src/components/Tag/Tag.ts","../src/components/ToastsLayout/components/styled.ts","../src/components/ToastsLayout/components/Toast.tsx","../src/tempIcons/AttentionIcon.tsx","../src/tempIcons/MergeIcon.tsx","../src/components/Toggle/styled.ts","../src/components/Toggle/Toggle.tsx","../src/components/ToggleButton/styled.ts","../src/components/VideoModal/components/styled.ts","../src/components/VideoModal/components/Popup.tsx","../src/components/VideoModal/styled.ts","../src/components/View/types.ts","../src/components/View/styled.ts","../src/tempIcons/EditIcon.tsx","../src/components/View/View.tsx","../src/components/WeightInput/styled.ts","../src/components/WeightInput/WeightInput.tsx","../src/components/WeightInput/types.ts","../src/components/Accordion/Accordion.tsx","../src/components/Anchor/Anchor.tsx","../src/components/Avatar/Avatar.tsx","../src/components/DetailPage/DetailPage.tsx","../src/components/Image/Image.tsx","../src/components/Modal/Modal.tsx","../src/components/PageHeader/PageHeader.tsx","../src/components/Pagination/Pagination.tsx","../src/components/Search/Search.tsx","../src/components/SegmentedControl/SegmentedControl.tsx","../src/components/ToastsLayout/ToastsLayout.tsx","../src/components/ToggleButton/ToggleButton.tsx","../src/components/VideoModal/VideoModal.tsx","../src/hooks/useDebounce.ts","../src/components/DataTable/hooks/useNested.ts","../src/hooks/useTabs.ts","../src/hoc/withDeprecated.tsx"],"sourcesContent":["import styled from 'styled-components';\nexport const BaseContainer = styled.div.withConfig({ displayName: \"vui--BaseContainer\", componentId: \"vui--bg86rb\" }) `box-sizing:border-box;position:relative;margin:0;padding:0;`;\n//# sourceMappingURL=BaseContainer.js.map","const componentMap = {\n inputLabel: 'label',\n inputLabelSmall: 'label',\n headingSmall: 'h3',\n headingMedium: 'h3',\n headingLarge: 'h2',\n headingXL: 'h1',\n headingXXL: 'h1',\n // Deprecated, but quickfix for A11y.\n button: 'button',\n buttonSmall: 'button',\n};\nexport const getComponentOverride = (as, variant) => {\n if (as)\n return as;\n if (variant)\n return componentMap[variant];\n return undefined;\n};\n//# sourceMappingURL=utils.js.map","export const colors = {\n brand: {\n blue: {\n lightest: '#E4F0F9',\n light: '#93C6E8',\n base: '#4CA1D9',\n dark: '#3878A2',\n darkest: '#1A384B',\n },\n peach: {\n lightest: '#FDECE9',\n light: '#F8B2A9',\n base: '#F48070',\n dark: '#B65F53',\n darkest: '#562D27',\n },\n },\n neutral: {\n ink: {\n lightest: '#959FA8',\n light: '#637381',\n base: '#37424D',\n dark: '#1B2126',\n },\n grey: {\n lightest: '#FAFAFB',\n light: '#F2F3F5',\n base: '#DFE3E8',\n dark: '#CDD1D5',\n },\n greyBlue: {\n lightest: '#AAC5D8',\n light: '#558BB1',\n base: '#406885',\n dark: '#1E313E',\n },\n },\n secondary: {\n red: {\n lightest: '#FDEEEE',\n light: '#F7BCBC',\n base: '#EB5757',\n dark: '#A53D3D',\n darkest: '#5E2323',\n },\n yellow: {\n lightest: '#FFF6D9',\n light: '#FFE999',\n base: '#FFC900',\n dark: '#BF9600',\n darkest: '#594600',\n },\n green: {\n lightest: '#E9F7EF',\n light: '#BEE7CF',\n base: '#27AE60',\n dark: '#1B7A43',\n darkest: '#104626',\n },\n lime: {\n lightest: '#F6FAEB',\n light: '#DBEBAE',\n base: '#A5CD35',\n dark: '#7B9927',\n darkest: '#394712',\n },\n teal: {\n lightest: '#E5F8F5',\n light: '#99E5D7',\n base: '#00BD9A',\n dark: '#00715C',\n darkest: '#00392E',\n },\n aqua: {\n lightest: '#EEFAFE',\n light: '#BBEBFA',\n base: '#56CCF2',\n dark: '#3C8FA9',\n darkest: '#225261',\n },\n purple: {\n lightest: '#F6EFFC',\n light: '#D9C0F1',\n base: '#A162DD',\n dark: '#694090',\n darkest: '#38224D',\n },\n blue: {\n lightest: '#D9EBF8',\n light: '#80BCE8',\n base: '#0079D1',\n dark: '#005A9C',\n darkest: '#003053',\n },\n pink: {\n lightest: '#FFF1FC',\n light: '#FFC7F3',\n base: '#FFA3EB',\n dark: '#BF7AB0',\n darkest: '#593852',\n },\n orange: {\n lightest: '#FEF5ED',\n light: '#FAD6B7',\n base: '#F2994A',\n dark: '#9D6330',\n darkest: '#613D1E',\n },\n },\n system: {\n scrollbar: {\n thumb: 'rgba(99, 115, 129, .5)',\n background: 'transparent',\n },\n },\n};\n//# sourceMappingURL=colors.js.map","export const breakpoints = {\n mobile: '640px',\n tablet: '720px',\n lgTablet: '960px',\n desktop: '1280px',\n lgDesktop: '1440px',\n};\n//# sourceMappingURL=breakpoints.js.map","export const radius = {\n sm: '0.125rem',\n base: '0.25rem',\n md: '0.5rem',\n lg: '0.75rem',\n full: '50%',\n};\n//# sourceMappingURL=radius.js.map","export var Shadows;\n(function (Shadows) {\n Shadows[\"sm\"] = \"0px 1px 3px rgba(55, 66, 77, 0.15)\";\n Shadows[\"base\"] = \"0px 4px 6px rgba(27, 33, 38, 0.2)\";\n Shadows[\"md\"] = \"0px 10px 15px rgba(27, 33, 38, 0.2)\";\n Shadows[\"lg\"] = \"0px 20px 25px rgba(27, 33, 38, 0.2)\";\n})(Shadows || (Shadows = {}));\n//# sourceMappingURL=shadows.js.map","var SizeAlias;\n(function (SizeAlias) {\n SizeAlias[\"none\"] = \"none\";\n SizeAlias[\"line\"] = \"line\";\n SizeAlias[\"xs\"] = \"xs\";\n SizeAlias[\"sm\"] = \"sm\";\n SizeAlias[\"base\"] = \"base\";\n SizeAlias[\"md\"] = \"md\";\n SizeAlias[\"lg\"] = \"lg\";\n SizeAlias[\"xl\"] = \"xl\";\n SizeAlias[\"xxl\"] = \"xxl\";\n})(SizeAlias || (SizeAlias = {}));\nfunction buildSizeScale({ increment, unit, count }) {\n const sizes = {};\n /* eslint-disable-next-line no-plusplus */\n for (let i = 0; i <= count; i++) {\n const value = i * increment;\n sizes[i] = `${value}${unit}`;\n }\n return sizes;\n}\nexport const sizeScale = buildSizeScale({ increment: 0.25, unit: 'rem', count: 20 });\nexport const sizeAliases = {\n [SizeAlias.none]: '0',\n [SizeAlias.line]: '1px',\n [SizeAlias.xs]: sizeScale[1],\n [SizeAlias.sm]: sizeScale[2],\n [SizeAlias.base]: sizeScale[4],\n [SizeAlias.md]: sizeScale[6],\n [SizeAlias.lg]: sizeScale[8],\n [SizeAlias.xl]: sizeScale[12],\n [SizeAlias.xxl]: sizeScale[16],\n};\nexport const sizes = Object.assign(Object.assign({}, sizeAliases), sizeScale);\n//# sourceMappingURL=sizes.js.map","import { colors } from './colors';\nexport const common = {\n fontFamily: 'Inter, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol',\n};\nexport const text = {\n headingXXL: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '40px',\n lineHeight: '56px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '-0.022rem',\n },\n headingXL: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '28px',\n lineHeight: '40px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '-0.02rem',\n },\n headingLarge: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '24px',\n lineHeight: '32px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '-0.019rem',\n },\n headingMedium: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '20px',\n lineHeight: '28px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '-0.017rem',\n },\n headingSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '16px',\n lineHeight: '20px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '-0.011rem',\n },\n headingTable: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n subheadingLarge: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '20px',\n lineHeight: '28px',\n color: colors.neutral.ink.light,\n textDecoration: 'none',\n letterSpacing: '-0.017rem',\n },\n subheadingMedium: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '16px',\n lineHeight: '24px',\n color: colors.neutral.ink.light,\n textDecoration: 'none',\n letterSpacing: '-0.011rem',\n },\n subheadingSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.light,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n subheadingSmallBold: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n body: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '-0.006rem',\n },\n bodySmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n bodyBold: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '-0.006rem',\n },\n bodyBoldDark: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.neutral.ink.dark,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n bodySmallBold: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n button: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '16px',\n lineHeight: '24px',\n color: colors.secondary.blue.base,\n textDecoration: 'none',\n letterSpacing: '-0.011rem',\n },\n buttonSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.secondary.blue.base,\n textDecoration: 'none',\n letterSpacing: '-0.006rem',\n },\n linkLarge: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '20px',\n lineHeight: '28px',\n color: colors.secondary.blue.base,\n textDecoration: 'underline',\n letterSpacing: '-0.017rem',\n },\n linkMedium: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '16px',\n lineHeight: '24px',\n color: colors.secondary.blue.base,\n textDecoration: 'underline',\n letterSpacing: '-0.011rem',\n },\n link: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.secondary.blue.base,\n textDecoration: 'underline',\n letterSpacing: '-0.006rem',\n },\n linkSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.secondary.blue.base,\n textDecoration: 'underline',\n letterSpacing: '0',\n },\n inputLabel: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '-0.006rem',\n },\n inputLabelSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.base,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n hintText: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.light,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n placeholder: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.neutral.ink.lightest,\n textDecoration: 'none',\n letterSpacing: '-0.006rem',\n },\n placeholderSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.lightest,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n placeholderCode: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.neutral.ink.lightest,\n textDecoration: 'none',\n letterSpacing: '0.5rem',\n },\n placeholderCodeSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 'normal',\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.neutral.ink.lightest,\n textDecoration: 'none',\n letterSpacing: '0.375rem',\n },\n error: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '14px',\n lineHeight: '20px',\n color: colors.secondary.red.base,\n textDecoration: 'none',\n letterSpacing: '-0.006rem',\n },\n errorSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.secondary.red.base,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n successSmall: {\n fontFamily: common.fontFamily,\n fontStyle: 'normal',\n fontWeight: 600,\n fontSize: '12px',\n lineHeight: '16px',\n color: colors.secondary.green.base,\n textDecoration: 'none',\n letterSpacing: '0',\n },\n};\n//# sourceMappingURL=text.js.map","import { colors } from './modules/colors';\nimport { breakpoints } from './modules/breakpoints';\nimport { layers } from './modules/layers';\nimport { radius } from './modules/radius';\nimport { Shadows } from './modules/shadows';\nimport { sizes } from './modules/sizes';\nimport { text, common } from './modules/text';\nexport const theme = Object.assign(Object.assign({}, common), { breakpoints,\n colors,\n layers,\n radius, shadows: Shadows, sizes,\n text });\n//# sourceMappingURL=index.js.map","export const layers = {\n base: 0,\n popup: 1000,\n modal: 2000,\n tooltip: 3000,\n};\n//# sourceMappingURL=layers.js.map","import styled from 'styled-components';\nimport { getComponentOverride } from './utils';\nimport { theme } from '../../theme';\nconst { text, colors, fontFamily } = theme;\nexport const Text = styled.span.attrs(({ as, variant }) => ({\n as: getComponentOverride(as, variant),\n})).withConfig({ displayName: \"vui--Text\", componentId: \"vui--m0sc57\" }) `box-sizing:border-box;display:inline-block;margin:0;padding:0;font-style:normal;font-weight:normal;font-size:12px;font-family:${fontFamily};line-height:16px;color:#37424d;${({ variant }) => (variant === 'button' || variant === 'buttonSmall') &&\n `\n cursor: pointer;\n background-color: transparent;\n border: 0;\n `} ${({ variant, muted = false }) => {\n if (!variant)\n return '';\n const color = muted ? colors.neutral.ink.lightest : text[variant].color;\n return `\n font-family: ${text[variant].fontFamily};\n font-style: ${text[variant].fontStyle};\n font-weight: ${text[variant].fontWeight};\n font-size: ${text[variant].fontSize};\n line-height: ${text[variant].lineHeight};\n color: ${color};\n text-decoration: ${text[variant].textDecoration};\n letter-spacing: ${text[variant].letterSpacing};\n `;\n}}`;\n//# sourceMappingURL=Text.js.map","import styled from 'styled-components';\nimport { motion } from 'framer-motion';\nimport { BaseContainer } from '../BaseContainer';\nimport { Text } from '../Text';\nimport { theme } from '../../theme';\nimport { sizes } from '../../theme/modules/sizes';\nconst TapBarChild = styled(BaseContainer).withConfig({ displayName: \"vui--TapBarChild\", componentId: \"vui--vb6lvt\" }) `display:flex;flex-direction:row;align-items:center;`;\nconst Left = styled(TapBarChild).withConfig({ displayName: \"vui--Left\", componentId: \"vui--19b2coz\" }) `svg{margin-right:12px;height:${sizes.base};width:${sizes.base};color:${({ glyphColor }) => glyphColor};}`;\nconst Right = styled(TapBarChild).withConfig({ displayName: \"vui--Right\", componentId: \"vui--13mhsyo\" }) `justify-content:flex-end;flex-grow:2;`;\n/**\n * Due to unique behaviour observed in Safari, we override the outline property when\n * the accordion is focussed.\n */\nconst AccordionSummary = styled.summary.withConfig({ displayName: \"vui--AccordionSummary\", componentId: \"vui--1lgp9cv\" }) `display:flex;flex-direction:column;padding:12px;border-radius:4px;user-select:none;cursor:pointer;border:1px solid ${theme.colors.neutral.grey.dark};:focus{outline:none;box-shadow:0 0 0 2px ${theme.colors.secondary.blue.light};}:active{box-shadow:0 0 0 2px ${theme.colors.secondary.blue.light};}`;\nconst Top = styled(BaseContainer).withConfig({ displayName: \"vui--Top\", componentId: \"vui--11peosj\" }) `display:flex;flex-direction:row;align-items:center;height:16px;`;\nconst Description = styled(Text).withConfig({ displayName: \"vui--Description\", componentId: \"vui--1e00qnt\" }) `margin-top:8px;`;\nconst AccordionContent = styled(motion(BaseContainer)).withConfig({ displayName: \"vui--AccordionContent\", componentId: \"vui--2wgxvx\" }) `margin-top:4px;background:rgba(217, 235, 248, 0.5);padding:10px 26px;`;\nconst AccordionDetails = styled.details.withConfig({ displayName: \"vui--AccordionDetails\", componentId: \"vui--1dg5oex\" }) `summary{list-style-type:none;::-webkit-details-marker{display:none;}}`;\nexport { AccordionSummary, Top, Text, Left, Right, Description, AccordionDetails, AccordionContent, };\n//# sourceMappingURL=styled.js.map","import React from 'react';\nimport { sizes } from '../theme/modules/sizes';\nexport const UpArrowIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", role: \"presentation\", height: sizes.md }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M4.91021 10.47L7.97021 7.4167L11.0302 10.47L11.9702 9.53003L7.97021 5.53003L3.97021 9.53003L4.91021 10.47Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=UpArrowIcon.js.map","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","export const generateId = (prefix) => {\n const randomNumber = Math.floor(Math.random() * 1000);\n return `${prefix}-${randomNumber}`;\n};\n//# sourceMappingURL=generateId.js.map","import { PureComponent } from 'react';\nimport { createPortal } from 'react-dom';\nimport { generateId } from '../../utils/generateId';\n/**\n * The portal component renders content on the document `body` unless `rootElementRef` is passed.\n */\nexport class Portal extends PureComponent {\n constructor(props) {\n super(props);\n this.id = generateId('portal');\n this.portalNode = null;\n this.state = {\n isMounted: false,\n };\n }\n componentDidMount() {\n const { rootElementRef } = this.props;\n this.portalNode = document.createElement('div');\n this.portalNode.setAttribute('id', `portal-${this.id}`);\n this.portalNode.style.cssText = 'position: absolute; top: 0; left: 0;';\n if (rootElementRef) {\n rootElementRef === null || rootElementRef === void 0 ? void 0 : rootElementRef.appendChild(this.portalNode);\n }\n else {\n document.body.appendChild(this.portalNode);\n }\n this.setState({ isMounted: true });\n }\n componentWillUnmount() {\n if (this.portalNode) {\n const { rootElementRef } = this.props;\n if (rootElementRef) {\n rootElementRef.removeChild(this.portalNode);\n }\n else {\n document.body.removeChild(this.portalNode);\n }\n }\n }\n render() {\n const { children } = this.props;\n const { isMounted } = this.state;\n return this.portalNode && isMounted ? createPortal(children, this.portalNode) : null;\n }\n}\n//# sourceMappingURL=Portal.js.map","import styled from 'styled-components';\nexport const PopoverDialog = styled.dialog.withConfig({ displayName: \"vui--PopoverDialog\", componentId: \"vui--cg48a2\" }) `z-index:${({ zIndex }) => zIndex + 1};padding:0;margin:0;border:none;background:transparent;`;\nexport const Backdrop = styled.div.withConfig({ displayName: \"vui--Backdrop\", componentId: \"vui--49or9l\" }) `position:fixed;top:0;right:0;bottom:0;left:0;z-index:${({ zIndex }) => zIndex};`;\n//# sourceMappingURL=styled.js.map","export const buildClassnames = (names) => names.filter(Boolean).join(' ');\n//# sourceMappingURL=buildClassnames.js.map","/**\n * A function to convert hex color to rgb.\n */\nexport const hexToRgb = (hex) => {\n const shorthandRegex = /^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i;\n const hexTmp = hex.replace(shorthandRegex, (m, r, g, b) => r + r + g + g + b + b);\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hexTmp);\n return result\n ? {\n r: parseInt(result[1], 16),\n g: parseInt(result[2], 16),\n b: parseInt(result[3], 16),\n }\n : null;\n};\n/**\n * A function to get a hex color with opacity, after converting to `rgba`.\n * @param hex color in hex format\n */\nexport const getOpaqueHexColor = (hex, opacity) => {\n const rgb = hexToRgb(hex);\n if (!rgb)\n return hex;\n return `rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, ${opacity})`;\n};\n//# sourceMappingURL=color.js.map","const TABBABLE_SELECTORS = 'button:not(:disabled), [href]:not(:disabled), input:not(:disabled), select:not(:disabled), textarea:not(:disabled), [tabindex]:not([tabindex=\"-1\"]):not(:disabled)';\nexport const useHandleFocus = (ref, onClose, disableFocusLock = false) => {\n const handleFocusTrap = (event) => {\n const focusableElements = ref.querySelectorAll(TABBABLE_SELECTORS);\n const firstElement = focusableElements[0];\n const lastElement = focusableElements[focusableElements.length - 1];\n // If shift tabbing (BACK) and on the first element, loop to last element.\n if (event.shiftKey && document.activeElement === firstElement) {\n event.preventDefault();\n lastElement.focus();\n // If tabbing (FORWARD) and on the last element, loop to first element.\n }\n else if (!event.shiftKey && document.activeElement === lastElement) {\n event.preventDefault();\n firstElement.focus();\n }\n };\n const handleKeyDown = (event) => {\n if (!ref)\n return;\n // Handle escape\n if (event.key === 'Escape') {\n onClose();\n // Check we should enforce focus trap.\n }\n else if (!disableFocusLock && event.key === 'Tab') {\n handleFocusTrap(event);\n }\n };\n return {\n handleKeyDown,\n };\n};\n//# sourceMappingURL=useHandleFocus.js.map","import { __rest } from \"tslib\";\n/* eslint-disable consistent-return */\nimport React, { useState, useEffect, useMemo } from 'react';\nimport { usePopper } from 'react-popper';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport { Portal } from '../Portal';\nimport { theme } from '../../theme';\nimport { PopoverDialog, Backdrop } from './styled';\nimport { generateId } from '../../utils';\nimport { useUpdateAriaAnchor } from './hooks/useUpdateAriaAnchor';\nimport { useHandleFocus } from './hooks/useHandleFocus';\nexport const Popover = (_a) => {\n var { id: passedId, children, zIndex = theme.layers.popup, placement = 'bottom', anchorElement, rootElementRef, onShouldClose, style, disableFocusLock } = _a, dialogProps = __rest(_a, [\"id\", \"children\", \"zIndex\", \"placement\", \"anchorElement\", \"rootElementRef\", \"onShouldClose\", \"style\", \"disableFocusLock\"]);\n // Set up PopperJS\n const [popperElement, setPopperElement] = useState(null);\n const { styles, attributes, update } = usePopper(anchorElement, popperElement, { placement });\n // Setup popover id to use passed, or generate its' own.\n const id = useMemo(() => passedId || generateId('popover'), [passedId]);\n // Check and update aria for anchor, only works once this has rendered for the first time though.\n useUpdateAriaAnchor({ anchorElement, popoverId: id });\n const onClose = () => {\n anchorElement === null || anchorElement === void 0 ? void 0 : anchorElement.focus();\n onShouldClose === null || onShouldClose === void 0 ? void 0 : onShouldClose();\n };\n const { handleKeyDown } = useHandleFocus(popperElement, onClose, disableFocusLock);\n /**\n * When content size is changed, force popper update\n */\n useEffect(() => {\n if (!update || !popperElement)\n return;\n const resizeObserver = new ResizeObserver(update);\n resizeObserver.observe(popperElement);\n return () => resizeObserver.disconnect();\n }, [update, popperElement]);\n /**\n * When window is resized, force popper update\n */\n useEffect(() => {\n if (!update)\n return;\n window.addEventListener('resize', update);\n return () => window.removeEventListener('resize', update);\n }, [update]);\n return (React.createElement(Portal, { rootElementRef: rootElementRef },\n React.createElement(Backdrop, { onClick: onClose, zIndex: zIndex }),\n React.createElement(PopoverDialog, Object.assign({ open: true, zIndex: zIndex, ref: setPopperElement, style: Object.assign(Object.assign({}, styles.popper), style), onKeyDown: handleKeyDown }, attributes.popper, dialogProps), children)));\n};\n//# sourceMappingURL=Popover.js.map","/* eslint-disable no-console */\n/* eslint-disable consistent-return */\nimport { useEffect } from 'react';\n/**\n * Update the anchor element to sent the required attributes if they haven't already set them.\n *\n * This allows current, inaccesible usages to be improved.\n */\nexport const useUpdateAriaAnchor = ({ anchorElement, popoverId }) => {\n useEffect(() => {\n if (!anchorElement)\n return;\n // Try and set aria-expanded on the anchor.\n try {\n anchorElement.setAttribute('aria-expanded', 'true');\n }\n catch (_) {\n console.warn(`Unable to update aria-expanded for popover anchor to: ${true}`);\n }\n // Try and set aria controls, unless it already exists.\n try {\n if (!anchorElement.hasAttribute('aria-controls')) {\n anchorElement.setAttribute('aria-controls', popoverId);\n }\n }\n catch (_) {\n console.warn(`Unable to set aria-controls for popover id: ${popoverId}`);\n }\n // Try and set aria-haspopup, unless it already exists.\n try {\n if (!anchorElement.hasAttribute('aria-haspopup')) {\n anchorElement.setAttribute('aria-haspopup', 'dialog');\n }\n }\n catch (_) {\n console.warn(`Unable to set aria-haspopup for popover id: ${popoverId}`);\n }\n // On unmount set aria-expanded to false\n return () => {\n try {\n anchorElement.setAttribute('aria-expanded', 'false');\n }\n catch (_) {\n console.warn(`Unable to update aria-expanded for popover anchor to: ${false}`);\n }\n };\n }, [anchorElement, popoverId]);\n};\n//# sourceMappingURL=useUpdateAriaAnchor.js.map","import React from 'react';\nexport const TailSpin = ({ width, height, className, color, label }) => (React.createElement(\"svg\", { width: width, height: height, className: className, viewBox: \"0 0 38 38\", xmlns: \"http://www.w3.org/2000/svg\", \"aria-label\": label },\n React.createElement(\"defs\", null,\n React.createElement(\"linearGradient\", { x1: \"8.042%\", y1: \"0%\", x2: \"65.682%\", y2: \"23.865%\", id: \"a\" },\n React.createElement(\"stop\", { stopColor: color, stopOpacity: \"0\", offset: \"0%\" }),\n React.createElement(\"stop\", { stopColor: color, stopOpacity: \".631\", offset: \"63.146%\" }),\n React.createElement(\"stop\", { stopColor: color, offset: \"100%\" }))),\n React.createElement(\"g\", { fill: \"none\", fillRule: \"evenodd\" },\n React.createElement(\"g\", { transform: \"translate(1 1)\" },\n React.createElement(\"path\", { d: \"M36 18c0-9.94-8.06-18-18-18\", id: \"Oval-2\", stroke: color, strokeWidth: \"2\" },\n React.createElement(\"animateTransform\", { attributeName: \"transform\", type: \"rotate\", from: \"0 18 18\", to: \"360 18 18\", dur: \"0.9s\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { fill: \"#fff\", cx: \"36\", cy: \"18\", r: \"1\" },\n React.createElement(\"animateTransform\", { attributeName: \"transform\", type: \"rotate\", from: \"0 18 18\", to: \"360 18 18\", dur: \"0.9s\", repeatCount: \"indefinite\" }))))));\n//# sourceMappingURL=TailSpin.js.map","import React from 'react';\nexport const Grid = ({ width, height, className, color, label }) => (React.createElement(\"svg\", { width: width, height: height, className: className, viewBox: \"0 0 105 105\", fill: color, \"aria-label\": label },\n React.createElement(\"circle\", { cx: \"12.5\", cy: \"12.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"0s\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"12.5\", cy: \"52.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"100ms\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"52.5\", cy: \"12.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"300ms\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"52.5\", cy: \"52.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"600ms\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"92.5\", cy: \"12.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"800ms\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"92.5\", cy: \"52.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"400ms\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"12.5\", cy: \"92.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"700ms\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"52.5\", cy: \"92.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"500ms\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"92.5\", cy: \"92.5\", r: \"12.5\" },\n React.createElement(\"animate\", { attributeName: \"fill-opacity\", begin: \"200ms\", dur: \"1s\", values: \"1;.2;1\", calcMode: \"linear\", repeatCount: \"indefinite\" }))));\n//# sourceMappingURL=Grid.js.map","import React from 'react';\nexport const ThreeDots = ({ width, height, className, color, label }) => (React.createElement(\"svg\", { width: width, height: height, className: className, viewBox: \"0 0 120 30\", xmlns: \"http://www.w3.org/2000/svg\", fill: color, \"aria-label\": label },\n React.createElement(\"circle\", { cx: \"15\", cy: \"15\", r: \"15\" },\n React.createElement(\"animate\", { attributeName: \"r\", from: \"15\", to: \"15\", begin: \"0s\", dur: \"0.8s\", values: \"15;9;15\", calcMode: \"linear\", repeatCount: \"indefinite\" }),\n React.createElement(\"animate\", { attributeName: \"fillOpacity\", from: \"1\", to: \"1\", begin: \"0s\", dur: \"0.8s\", values: \"1;.5;1\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"60\", cy: \"15\", r: \"9\", attributeName: \"fillOpacity\", from: \"1\", to: \"0.3\" },\n React.createElement(\"animate\", { attributeName: \"r\", from: \"9\", to: \"9\", begin: \"0s\", dur: \"0.8s\", values: \"9;15;9\", calcMode: \"linear\", repeatCount: \"indefinite\" }),\n React.createElement(\"animate\", { attributeName: \"fillOpacity\", from: \"0.5\", to: \"0.5\", begin: \"0s\", dur: \"0.8s\", values: \".5;1;.5\", calcMode: \"linear\", repeatCount: \"indefinite\" })),\n React.createElement(\"circle\", { cx: \"105\", cy: \"15\", r: \"15\" },\n React.createElement(\"animate\", { attributeName: \"r\", from: \"15\", to: \"15\", begin: \"0s\", dur: \"0.8s\", values: \"15;9;15\", calcMode: \"linear\", repeatCount: \"indefinite\" }),\n React.createElement(\"animate\", { attributeName: \"fillOpacity\", from: \"1\", to: \"1\", begin: \"0s\", dur: \"0.8s\", values: \"1;.5;1\", calcMode: \"linear\", repeatCount: \"indefinite\" }))));\n//# sourceMappingURL=ThreeDots.js.map","import React from 'react';\nimport { TailSpin } from './TailSpin';\nimport { Grid } from './Grid';\nimport { ThreeDots } from './ThreeDots';\nexport const Loader = ({ className, height = 24, width = 24, color = '#588CB0', type = 'TailSpin', }) => {\n switch (type) {\n case 'Grid': {\n return React.createElement(Grid, { className: className, height: height, width: width, color: color });\n }\n case 'ThreeDots': {\n return React.createElement(ThreeDots, { className: className, height: height, width: width, color: color });\n }\n case 'TailSpin':\n default: {\n return React.createElement(TailSpin, { className: className, height: height, width: width, color: color });\n }\n }\n};\n//# sourceMappingURL=Loader.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nimport { sizes } from '../../../theme/modules/sizes';\nexport const MainContent = styled.span.withConfig({ displayName: \"vui--MainContent\", componentId: \"vui--3juln2\" }) `display:inline-flex;align-items:center;gap:${({ hasText }) => (hasText ? '8px' : '4px')};${({ loading }) => loading && 'opacity: 0;'};svg{width:${({ size }) => sizes[size]};height:${({ size }) => sizes[size]};}`;\nconst BaseButton = styled.button.withConfig({ displayName: \"vui--BaseButton\", componentId: \"vui--1xsghtl\" }) `position:relative;box-sizing:border-box;appearance:none;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:${theme.fontFamily};font-weight:400;border:1px solid;background-color:transparent;white-space:nowrap;${(props) => {\n let height = '40px';\n let paddingLeft = '24px';\n let paddingRight = '24px';\n let borderRadius = '8px';\n let fontSize = '16px';\n let outlineWidth = '4px';\n if (props.hasIcon) {\n paddingLeft = '16px';\n }\n if (props.hasDropdown) {\n paddingRight = '16px';\n }\n if (props.size === 'sm') {\n height = '32px';\n paddingLeft = '16px';\n paddingRight = '16px';\n borderRadius = '4px';\n fontSize = '14px';\n outlineWidth = '2px';\n if (props.hasIcon) {\n paddingLeft = '8px';\n }\n if (props.hasDropdown) {\n paddingRight = '8px';\n }\n }\n if (!props.hasText) {\n paddingLeft = '8px';\n paddingRight = '8px';\n }\n return `\n --outline-width: ${outlineWidth};\n\n height: ${height};\n padding-left: ${paddingLeft};\n padding-right: ${paddingRight};\n border-radius: ${borderRadius};\n font-size: ${fontSize};\n `;\n}} &:hover{cursor:pointer;}&:disabled{pointer-events:none;cursor:unset !important;}& > span{position:relative;top:-1px;}`;\nexport const DefaultButton = styled(BaseButton).withConfig({ displayName: \"vui--DefaultButton\", componentId: \"vui--1mceh7z\" }) `border-color:${theme.colors.neutral.grey.dark};background-color:white;box-shadow:0 1px 3px rgba(55, 66, 77, 0.15);color:${({ hasText }) => hasText ? theme.colors.neutral.ink.base : theme.colors.secondary.blue.base};&:hover{background-color:${theme.colors.neutral.grey.lightest};}&:active{background-color:${theme.colors.neutral.grey.lightest};border-color:${theme.colors.secondary.blue.base};box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.blue.light};}&:focus-visible{box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.blue.light};outline:0;}&:disabled{box-shadow:none !important;background-color:${theme.colors.neutral.grey.base} !important;border-color:${theme.colors.neutral.grey.base} !important;color:${theme.colors.neutral.ink.light} !important;}`;\nexport const DefaultDestructiveButton = styled(DefaultButton).withConfig({ displayName: \"vui--DefaultDestructiveButton\", componentId: \"vui--1vhc5dm\" }) `color:${theme.colors.secondary.red.base};&:hover{color:${theme.colors.secondary.red.dark};}&:active{border-color:${theme.colors.secondary.red.base};box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.red.light};color:${theme.colors.secondary.red.dark};}&:focus-visible{box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.red.light};}`;\nexport const PrimaryButton = styled(DefaultButton).withConfig({ displayName: \"vui--PrimaryButton\", componentId: \"vui--lamrqo\" }) `background-color:${theme.colors.secondary.blue.base};border-color:${theme.colors.secondary.blue.base};color:white;&:hover{background-color:${theme.colors.secondary.blue.dark};border-color:${theme.colors.secondary.blue.dark};}&:active{background-color:${theme.colors.secondary.blue.dark};border-color:${theme.colors.secondary.blue.dark};box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.blue.light};}&:focus-visible{box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.blue.light};}`;\nexport const PrimaryDestructiveButton = styled(PrimaryButton).withConfig({ displayName: \"vui--PrimaryDestructiveButton\", componentId: \"vui--14zrdl\" }) `background-color:${theme.colors.secondary.red.base};border-color:${theme.colors.secondary.red.base};color:white;&:hover{background-color:${theme.colors.secondary.red.dark};border-color:${theme.colors.secondary.red.dark};}&:active{background-color:${theme.colors.secondary.red.dark};border-color:${theme.colors.secondary.red.dark};box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.red.light};}&:focus-visible{box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.red.light};}`;\nexport const FlatButton = styled(BaseButton).withConfig({ displayName: \"vui--FlatButton\", componentId: \"vui--1w880uc\" }) `border-color:transparent;box-shadow:none;color:${theme.colors.neutral.ink.base};&:hover{background-color:rgba(0, 0, 0, 0.1);}&:active{background-color:rgba(0, 0, 0, 0.1);}&:focus-visible{box-shadow:0 0 0 var(--outline-width)${theme.colors.secondary.blue.light};outline:0;}&:disabled{background-color:transparent;border-color:transparent;}`;\nexport const UnstyledButton = styled.button.withConfig({ displayName: \"vui--UnstyledButton\", componentId: \"vui--kyccjz\" }) `appearance:none;border:0;background-color:transparent;padding:0;font:inherit;&:hover{cursor:pointer;}`;\nexport const LinkButton = styled(UnstyledButton).withConfig({ displayName: \"vui--LinkButton\", componentId: \"vui--eh2yja\" }) `display:inline-flex;flex-direction:row;align-items:center;font-family:${theme.text.link.fontFamily};font-size:${theme.text.link.fontSize};font-weight:${theme.text.link.fontWeight};line-height:${theme.text.link.lineHeight};text-decoration:${theme.text.link.textDecoration};color:${theme.colors.secondary.blue.base};&:hover{color:${theme.colors.secondary.blue.dark};}& > * + *{margin-left:${theme.sizes.xs};}& > span{position:relative;top:-1px;}`;\nexport const LoadingWrapper = styled.div.withConfig({ displayName: \"vui--LoadingWrapper\", componentId: \"vui--cvu4hf\" }) `position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;margin-left:0;`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nexport const DropdownIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M4 6L8 10L12 6H4Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=DropdownIcon.js.map","import { __rest } from \"tslib\";\nimport React, { forwardRef } from 'react';\nimport { Loader } from '../Loader';\nimport { DefaultButton, DefaultDestructiveButton, PrimaryButton, PrimaryDestructiveButton, FlatButton, LinkButton, UnstyledButton, LoadingWrapper, MainContent, } from './components/styled';\nimport { DropdownIcon } from '../../tempIcons/DropdownIcon';\nconst variantMap = {\n default: DefaultButton,\n primary: PrimaryButton,\n destructive: DefaultDestructiveButton,\n primaryDestructive: PrimaryDestructiveButton,\n flat: FlatButton,\n link: LinkButton,\n unstyled: UnstyledButton,\n};\nexport const Button = forwardRef((_a, ref) => {\n var { className, children, icon, variant = 'default', size = 'base', dropdown = false, loading = false } = _a, otherProps = __rest(_a, [\"className\", \"children\", \"icon\", \"variant\", \"size\", \"dropdown\", \"loading\"]);\n if (variant === 'unstyled') {\n return (React.createElement(UnstyledButton, Object.assign({ ref: ref, className: className }, otherProps), children));\n }\n const VariantButton = variantMap[variant];\n const hasChildren = children !== undefined;\n const hasIcon = !!icon;\n return (React.createElement(VariantButton, Object.assign({ ref: ref, className: className, size: size, hasText: hasChildren, hasIcon: hasIcon, hasDropdown: dropdown }, otherProps),\n (hasChildren || hasIcon) && (React.createElement(MainContent, { loading: loading, hasText: !!children, size: children || size === 'sm' ? 'base' : 'md' },\n icon && icon,\n children !== undefined && React.createElement(\"span\", null, children),\n dropdown && React.createElement(DropdownIcon, null))),\n loading && (React.createElement(LoadingWrapper, null,\n React.createElement(Loader, null)))));\n});\n//# sourceMappingURL=Button.js.map","import styled from 'styled-components';\nimport { sizes } from '../../theme/modules/sizes';\nexport const Header = styled.header.withConfig({ displayName: \"vui--Header\", componentId: \"vui--13im4do\" }) `padding-top:${sizes.md};padding-right:${sizes.md};padding-left:${sizes.md};margin-bottom:${sizes.md};& > * + *{margin-top:${sizes.xs};}`;\nexport const HeaderGrid = styled.div.withConfig({ displayName: \"vui--HeaderGrid\", componentId: \"vui--1orvtgl\" }) `/*${sizes.base}*/display:flex;justify-content:flex-end;align-items:center;& > *:first-child{flex:1;}`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nimport { sizes } from '../theme/modules/sizes';\nexport const DownArrowIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", role: \"presentation\", height: sizes.md }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M11.0302 5.52997L7.97021 8.5833L4.91021 5.52997L3.97021 6.46997L7.97021 10.47L11.9702 6.46997L11.0302 5.52997Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=DownArrowIcon.js.map","import React from 'react';\nexport const CrossIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", role: \"presentation\", height: 24, width: 24 }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M19 6.51071L17.4893 5L11.5 10.9893L5.51071 5L4 6.51071L9.98929 12.5L4 18.4893L5.51071 20L11.5 14.0107L17.4893 20L19 18.4893L13.0107 12.5L19 6.51071Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=CrossIcon.js.map","import React from 'react';\nimport { Text } from '../Text';\nimport { Button } from '../Button';\nimport { Header, HeaderGrid } from './styled';\nimport { DownArrowIcon } from '../../tempIcons/DownArrowIcon';\nimport { UpArrowIcon } from '../../tempIcons/UpArrowIcon';\nimport { CrossIcon } from '../../tempIcons/CrossIcon';\nexport const CardHeader = ({ id, title, subtitle, headerVariant = 'headingSmall', action, ActionSlot, isCollapsed, onClickCollapse, onClickClose, }) => (React.createElement(Header, null,\n React.createElement(HeaderGrid, null,\n React.createElement(Text, { id: id, variant: headerVariant }, title),\n action && (React.createElement(Button, { variant: \"link\", onClick: action.onClick }, action.title)),\n ActionSlot,\n onClickCollapse && (React.createElement(Button, { variant: \"flat\", icon: isCollapsed ? React.createElement(DownArrowIcon, null) : React.createElement(UpArrowIcon, null), onClick: onClickCollapse })),\n onClickClose && (React.createElement(Button, { variant: \"flat\", icon: React.createElement(CrossIcon, null), onClick: onClickClose, \"aria-label\": \"Close\" }))),\n subtitle && React.createElement(Text, { variant: \"subheadingSmall\" }, subtitle)));\n//# sourceMappingURL=CardHeader.js.map","import styled from 'styled-components';\nimport { motion } from 'framer-motion';\nimport { Shadows } from '../../theme/modules/shadows';\nimport { colors } from '../../theme/modules/colors';\nimport { sizes } from '../../theme/modules/sizes';\nimport { radius } from '../../theme/modules/radius';\nimport { text } from '../../theme/modules/text';\nconst { grey } = colors.neutral;\nconst elevationShadowMap = {\n 0: 'none',\n 1: Shadows.sm,\n 2: Shadows.base,\n 3: Shadows.md,\n 4: Shadows.lg,\n};\nconst accents = {\n info: colors.secondary.blue.base,\n success: colors.secondary.green.base,\n error: colors.secondary.red.base,\n};\nexport const Footer = styled.footer.withConfig({ displayName: \"vui--Footer\", componentId: \"vui--1s3932u\" }) `margin-top:${sizes.base};padding:${sizes.md};z-index:2;`;\nexport const Section = styled.section.withConfig({ displayName: \"vui--Section\", componentId: \"vui--n2tmr2\" }) `padding-right:${sizes.md};padding-left:${sizes.md};margin-top:${sizes.md};margin-bottom:${sizes.md};font-family:${text.body.fontFamily};font-size:${text.body.fontSize};font-weight:${text.body.fontWeight};line-height:${text.body.lineHeight};color:${text.body.color};& + &{border-top:${sizes.line} solid ${grey.base};padding-top:${sizes.md};}`;\nexport const FullBleed = styled.div.withConfig({ displayName: \"vui--FullBleed\", componentId: \"vui--8unl0i\" }) `margin-left:-${sizes.md};margin-right:-${sizes.md};`;\nexport const Body = styled(motion.div).withConfig({ displayName: \"vui--Body\", componentId: \"vui--1q1caki\" }) `overflow-y:hidden;&:not(:first-child)> ${Section}:first-child{margin-top:0;}`;\nexport const Surface = styled.div.withConfig({ displayName: \"vui--Surface\", componentId: \"vui--5cnkiv\" }) `position:relative;width:100%;background-color:white;border:${sizes.line} solid ${grey.base};box-shadow:${(props) => props.elevation !== undefined ? elevationShadowMap[props.elevation] : Shadows.sm};border-radius:${radius.md};overflow:hidden;box-sizing:border-box;${({ accent }) => accent &&\n `\n &::after {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n height: ${sizes.xs};\n background-color: ${accents[accent]};\n }\n `}`;\n//# sourceMappingURL=styled.js.map","import React, { useState } from 'react';\nimport { CardHeader } from '../CardHeader';\nimport { Surface, Body, FullBleed, Footer, Section } from './styled';\nconst collapseAnimationVariants = {\n expanded: { height: 'auto' },\n collapsed: { height: 0 },\n};\nexport const Card = ({ className, style, title, subtitle, HeaderActionSlot, action, collapsable, elevation, accent, children, onClose, renderFooter, }) => {\n const [isCollapsed, setIsCollapsed] = useState(false);\n const toggleCollapsed = () => {\n setIsCollapsed(!isCollapsed);\n };\n const headerMarkup = title && (React.createElement(CardHeader, { title: title, subtitle: subtitle, ActionSlot: HeaderActionSlot, action: action, onClickClose: onClose, isCollapsed: isCollapsed, onClickCollapse: collapsable ? toggleCollapsed : undefined }));\n const showBody = (collapsable && !isCollapsed) || !collapsable;\n const bodyMarkup = (React.createElement(Body, { animate: showBody ? 'expanded' : 'collapsed', variants: collapseAnimationVariants, transition: { duration: 0.3, ease: 'easeOut' } },\n React.createElement(Section, null, children)));\n const footerMarkup = renderFooter !== undefined && React.createElement(Footer, null, renderFooter());\n return (React.createElement(Surface, { className: className, style: style, elevation: elevation, accent: accent },\n headerMarkup,\n bodyMarkup,\n footerMarkup));\n};\nCard.Surface = Surface;\nCard.Section = Section;\nCard.FullBleed = FullBleed;\nCard.Footer = Footer;\n//# sourceMappingURL=Card.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nimport { Button } from '../Button';\nimport { Card } from '../Card';\nimport { Text } from '../Text';\nconst { sizes, colors, text } = theme;\nexport const ListCard = styled(Card.Surface).withConfig({ displayName: \"vui--ListCard\", componentId: \"vui--1trkfaa\" }) `min-width:280px;padding:${sizes.base} 0;display:flex;flex-direction:column;`;\nexport const Section = styled.section.withConfig({ displayName: \"vui--Section\", componentId: \"vui--rjtb0l\" }) `display:flex;flex-direction:column;& + &{border-top:1px solid ${colors.neutral.grey.base};margin-top:${sizes.base};padding-top:${sizes.base};}`;\nexport const SectionHeading = styled(Text).attrs({ variant: 'subheadingSmall' }).withConfig({ displayName: \"vui--SectionHeading\", componentId: \"vui--74egpv\" }) `margin:${sizes.sm} ${sizes.base} ${sizes.sm};`;\nexport const Item = styled(Button).attrs({ variant: 'unstyled' }).withConfig({ displayName: \"vui--Item\", componentId: \"vui--1ib3pw5\" }) `box-sizing:border-box;min-height:${sizes.lg};padding:${sizes.xs} ${sizes.base};display:flex;align-items:center;white-space:nowrap;font-family:${text.body.fontFamily};font-size:${text.body.fontSize};font-weight:${text.body.fontWeight};&:hover{background-color:${colors.neutral.grey.light};color:${colors.secondary.blue.base};}& > * + *{margin-left:${sizes[3]};}`;\nexport const ActionItem = styled(Item).withConfig({ displayName: \"vui--ActionItem\", componentId: \"vui--1p9b0cj\" }) `color:${colors.secondary.blue.base};`;\nexport const LinkItem = styled(Item).withConfig({ displayName: \"vui--LinkItem\", componentId: \"vui--dzqkwg\" }) `color:${colors.secondary.blue.base};text-decoration:underline;`;\n//# sourceMappingURL=styled.js.map","import React, { useState } from 'react';\nimport { Popover } from '../Popover';\nimport { Button } from '../Button';\nimport { Section, SectionHeading, ListCard, Item, ActionItem, LinkItem } from './styled';\nconst itemMap = {\n item: Item,\n action: ActionItem,\n link: LinkItem,\n};\nexport const ActionList = ({ title, items = [], sections, buttonVariant, buttonSize, }) => {\n const [isActive, setIsActive] = useState(false);\n const [anchorEl, setAnchorEl] = useState(null);\n const handleClick = (callback) => {\n setIsActive(false);\n callback();\n };\n const renderItem = (item) => {\n const ItemComponent = itemMap[item.variant || 'item'];\n return (React.createElement(ItemComponent, { onClick: () => handleClick(item.onClick), key: item.title },\n item.icon && item.icon,\n React.createElement(\"span\", null, item.title)));\n };\n const renderSection = (section) => (React.createElement(Section, { key: section.title },\n section.title && React.createElement(SectionHeading, null, section.title),\n section.items.map(renderItem)));\n const listItemMarkup = sections ? sections.map(renderSection) : items.map(renderItem);\n return (React.createElement(React.Fragment, null,\n React.createElement(Button, { dropdown: true, variant: buttonVariant, size: buttonSize, onClick: () => setIsActive(!isActive), ref: setAnchorEl }, title),\n isActive && (React.createElement(Popover, { anchorElement: anchorEl, placement: \"bottom-start\", onShouldClose: () => setIsActive(false) },\n React.createElement(ListCard, null, listItemMarkup)))));\n};\n//# sourceMappingURL=ActionList.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nexport const CommonAnchor = styled.a.withConfig({ displayName: \"vui--CommonAnchor\", componentId: \"vui--1tq5iq\" }) `box-sizing:border-box;display:inline-flex;margin:0;padding:0;font-family:${theme.text.link.fontFamily};font-style:${theme.text.link.fontStyle};font-weight:${theme.text.link.fontWeight};font-size:${theme.text.link.fontSize};line-height:${theme.text.link.lineHeight};color:${theme.colors.secondary.blue.base};text-decoration:${theme.text.link.textDecoration};&:hover{color:${theme.colors.secondary.blue.dark};}`;\n//# sourceMappingURL=styled.js.map","import styled from 'styled-components';\nimport { BaseContainer } from '../../BaseContainer/BaseContainer';\nexport const Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--901a1g\" }) `display:inline-flex;background-color:#ffffff;box-shadow:1px 4px 15px rgba(27, 33, 38, 0.25);border-radius:4px;overflow:hidden;`;\n//# sourceMappingURL=styled.js.map","import React, { forwardRef } from 'react';\nimport { Container } from './styled';\nexport const BasicDropdown = forwardRef((props, ref) => {\n const { children, className } = props;\n return (React.createElement(Container, { className: className, ref: ref }, children));\n});\n//# sourceMappingURL=BasicDropdown.js.map","import styled from 'styled-components';\nimport { BasicDropdown } from './components/BasicDropdown';\nimport { BaseContainer as BasicContainer } from '../BaseContainer/BaseContainer';\nconst Container = styled(BasicContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--602vf7\" }) `display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;`;\nconst Wrap = styled(BasicContainer).withConfig({ displayName: \"vui--Wrap\", componentId: \"vui--npjssh\" }) `display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;min-width:100%;`;\nconst Dropdown = styled(BasicDropdown).withConfig({ displayName: \"vui--Dropdown\", componentId: \"vui--dv3wrs\" }) `flex-direction:column;position:absolute;z-index:3;${(props) => (props.reversed ? 'bottom: 8px;' : 'top: 6px;')} &.dropdown-enter{opacity:0;transform:translateY(-6px);}&.dropdown-enter-active{opacity:1;transition:all 200ms;transform:translateY(0px);}&.dropdown-exit{opacity:1;transform:translateY(0px);}&.dropdown-exit-active{opacity:0;transition:all 200ms;transform:translateY(-6px);}`;\nexport { Wrap, Dropdown, Container };\n//# sourceMappingURL=styled.js.map","import React, { useRef } from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport { Wrap, Dropdown, Container } from './styled';\nimport { useClickAway } from './hooks/useClickAway';\nexport const AnimatedDropdown = ({ cta, shouldShowDropdown, children, className = 'animated-dropdown', reversed = false, onClickAway = () => { }, timeout = 350, transitionClassnames = 'dropdown', onClick, onMouseEnter, onMouseLeave, }) => {\n const dropdownRef = useRef(null);\n useClickAway(dropdownRef, (event) => {\n if (shouldShowDropdown) {\n onClickAway(event);\n }\n });\n return (React.createElement(Container, { className: `${className}-container ${className}`, onClick: onClick, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, ref: dropdownRef },\n !reversed && cta,\n React.createElement(Wrap, { className: `${className}-wrap ${className}` },\n React.createElement(CSSTransition, { in: shouldShowDropdown, timeout: timeout, classNames: transitionClassnames, unmountOnExit: true },\n React.createElement(Dropdown, { reversed: reversed, className: `${className}-basic-dropdown ${className}` }, children))),\n reversed && cta));\n};\n//# sourceMappingURL=AnimatedDropdown.js.map","import { useEffect } from 'react';\nexport const useClickAway = (ref, onClickAway) => {\n useEffect(() => {\n const handleClickAway = (event) => {\n if (ref.current && !ref.current.contains(event.target)) {\n onClickAway(event);\n }\n };\n document.addEventListener('mousedown', handleClickAway);\n return () => {\n document.removeEventListener('mousedown', handleClickAway);\n };\n }, [ref, onClickAway]);\n};\n//# sourceMappingURL=useClickAway.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nexport const AvatarSC = styled.div.withConfig({ displayName: \"vui--AvatarSC\", componentId: \"vui--224xhi\" }) `width:${(props) => props.width};height:${(props) => props.width};border:3px solid ${theme.colors.neutral.grey.base};color:${(props) => props.textColor};background-color:${(props) => props.bgColor};cursor:pointer;border-radius:50%;display:flex;justify-content:center;align-items:center;background-size:cover;span{font-family:${theme.text.bodySmallBold.fontFamily};font-weight:${theme.text.bodySmallBold.fontWeight};font-size:${theme.text.bodySmallBold.fontSize};line-height:${theme.text.bodySmallBold.lineHeight};}`;\n//# sourceMappingURL=styled.js.map","export var Position;\n(function (Position) {\n Position[\"end\"] = \"end\";\n Position[\"start\"] = \"start\";\n})(Position || (Position = {}));\nexport var Sides;\n(function (Sides) {\n Sides[\"BOTTOM\"] = \"bottom\";\n Sides[\"TOP\"] = \"top\";\n})(Sides || (Sides = {}));\n//# sourceMappingURL=types.js.map","import styled from 'styled-components';\nimport { Text } from '../Text';\nimport { theme } from '../../theme';\nconst Container = styled.div.withConfig({ displayName: \"vui--Container\", componentId: \"vui--16xd2og\" }) `display:inline-block;`;\nconst Hoverable = styled(Container).withConfig({ displayName: \"vui--Hoverable\", componentId: \"vui--if1bgt\" }) ``;\nconst TooltipText = styled(Text).withConfig({ displayName: \"vui--TooltipText\", componentId: \"vui--1tbdgc0\" }) `color:${theme.colors.neutral.grey.lightest};white-space:pre-line;overflow-wrap:break-word;display:inline;`;\nconst Triangle = styled.div.withConfig({ displayName: \"vui--Triangle\", componentId: \"vui--1eqvhdd\" }) `background-color:#333;height:16px;width:16px;position:absolute;transform:rotate(45deg);z-index:12;`;\nconst Tip = styled.div.withConfig({ displayName: \"vui--Tip\", componentId: \"vui--10g4qtf\" }) `transition:${({ duration }) => `opacity ${duration}ms`};&.tip-enter{opacity:0;}&.tip-enter-active{opacity:1;}&[data-popper-placement^='top-start'] > #veeqo-components-triangle{left:8px;bottom:0px;}&[data-popper-placement^='top-end'] > #veeqo-components-triangle{right:8px;bottom:0px;}&[data-popper-placement^='bottom-start'] > #veeqo-components-triangle{left:8px;top:-4px;}&[data-popper-placement^='bottom-end'] > #veeqo-components-triangle{right:8px;top:-4px;}`;\nconst Wrap = styled(Container).withConfig({ displayName: \"vui--Wrap\", componentId: \"vui--1arl0em\" }) `font-size:14px;overflow:hidden;padding:16px 20px;border-radius:4px;box-shadow:0 6px 1em -0.5em rgba(0, 0, 0, 0.35);background:#333;color:#fff;z-index:10;min-width:${({ tipMinWidth }) => tipMinWidth}px;max-width:${({ tipMaxWidth }) => tipMaxWidth}px;`;\nexport { Container, TooltipText, Tip, Hoverable, Wrap, Triangle };\n//# sourceMappingURL=styled.js.map","import React, { useState, useCallback } from 'react';\nimport { usePopper } from 'react-popper';\nimport ReactDOM from 'react-dom';\nimport { theme } from '../../theme';\nimport { Sides } from './types';\nimport { Container, TooltipText, Tip, Hoverable, Wrap, Triangle } from './styled';\nconst defaultConfig = {\n duration: 400,\n side: Sides.TOP,\n triangleOffset: 8,\n tipMinWidth: 60,\n tipMaxWidth: 340,\n};\nexport const Tooltip = ({ children, text, content, config, reversed = false, className, withTriangle, initialShouldShow = false, useReactPortal = true, }) => {\n const hasText = text ? text.trim().length > 0 : false;\n const usedConfig = Object.assign(Object.assign({}, defaultConfig), config);\n const { duration, side, triangleOffset, tipMinWidth, tipMaxWidth } = usedConfig;\n const classNames = {\n container: className && `${className} ${className}-container`,\n tip: className && `${className}-tip`,\n wrap: className && `${className}-wrap`,\n triangle: className && `${className}-triangle`,\n hoverable: className && `${className}-hoverable`,\n };\n const [shouldShow, setShouldShow] = useState(initialShouldShow);\n const [hoverableElement, setHoverableElement] = useState(null);\n const [popperElement, setPopperElement] = useState(null);\n const { styles, attributes } = usePopper(hoverableElement, popperElement, {\n placement: `${side}-${reversed ? 'end' : 'start'}`,\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [0, 10],\n },\n },\n ],\n });\n const show = useCallback(() => setShouldShow(true), [setShouldShow]);\n const hide = useCallback(() => setShouldShow(false), [setShouldShow]);\n const tooltipStyles = Object.assign(Object.assign({}, styles.popper), { zIndex: theme.layers.tooltip });\n const tooltipMarkup = shouldShow && (content || hasText) && (React.createElement(Tip, Object.assign({ className: classNames.tip, ref: setPopperElement, duration: duration, triangleOffsetSize: triangleOffset, style: tooltipStyles }, attributes.popper, { role: \"tooltip\" }),\n React.createElement(Wrap, { className: classNames.wrap, tipMinWidth: tipMinWidth, tipMaxWidth: tipMaxWidth }, content !== null && content !== void 0 ? content : React.createElement(TooltipText, null, text)),\n withTriangle && React.createElement(Triangle, { id: \"veeqo-components-triangle\", className: classNames.triangle })));\n return (React.createElement(Container, { className: classNames.container },\n useReactPortal ? ReactDOM.createPortal(tooltipMarkup, document.body) : tooltipMarkup,\n React.createElement(Hoverable, { ref: setHoverableElement, className: classNames.hoverable, onMouseEnter: show, onMouseLeave: hide }, children)));\n};\n//# sourceMappingURL=Tooltip.js.map","import styled from 'styled-components';\nimport { BaseContainer } from '../BaseContainer';\nimport { text } from '../../theme/modules/text';\nimport { colors } from '../../theme/modules/colors';\nimport { sizes } from '../../theme/modules/sizes';\nconst BaseBadge = styled(BaseContainer).withConfig({ displayName: \"vui--BaseBadge\", componentId: \"vui--idt2e7\" }) `display:inline-flex;align-items:center;vertical-align:middle;gap:4px;padding:0.35em 0.65em;font-family:${text.bodySmall.fontFamily};font-weight:${text.bodySmall.fontWeight};font-size:75%;line-height:16px;border-radius:0.75rem;border:${(props) => (props.hideBorder ? 'none' : '1px solid transparent')};cursor:default;svg{width:${sizes.base};height:${sizes.base};}`;\nexport const DefaultBadge = styled(BaseBadge).withConfig({ displayName: \"vui--DefaultBadge\", componentId: \"vui--cjoxaq\" }) `background-color:inherit;border-color:${colors.secondary.blue.base};color:${colors.secondary.blue.base};`;\nexport const PrimaryBadge = styled(BaseBadge).withConfig({ displayName: \"vui--PrimaryBadge\", componentId: \"vui--12dvheo\" }) `border-color:${colors.secondary.blue.base};background-color:${colors.secondary.blue.lightest};color:${colors.secondary.blue.base};`;\nexport const WarningBadge = styled(BaseBadge).withConfig({ displayName: \"vui--WarningBadge\", componentId: \"vui--5cooo3\" }) `border-color:${colors.secondary.yellow.base};background-color:${colors.secondary.yellow.lightest};color:${colors.secondary.orange.dark};`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nimport { Tooltip } from '../Tooltip';\nimport { DefaultBadge, PrimaryBadge, WarningBadge } from './styled';\nimport { buildClassnames } from '../../utils/buildClassnames';\nconst variantMap = {\n default: DefaultBadge,\n primary: PrimaryBadge,\n warning: WarningBadge,\n};\nexport const Badge = ({ variant = 'default', hideBorder = false, iconSlot, tooltip, className, e2eClassName, children, }) => {\n const BadgeVariant = variantMap[variant];\n return (React.createElement(Tooltip, { text: tooltip },\n React.createElement(BadgeVariant, { className: buildClassnames([className, e2eClassName]), hideBorder: hideBorder },\n iconSlot && iconSlot,\n children && React.createElement(\"span\", null, children))));\n};\n//# sourceMappingURL=Badge.js.map","import styled from 'styled-components';\nimport { Text } from '../Text';\nimport { BaseContainer } from '../BaseContainer';\nimport { sizes } from '../../theme/modules/sizes';\nconst BannerLayout = styled(BaseContainer).withConfig({ displayName: \"vui--BannerLayout\", componentId: \"vui--5tzoxx\" }) `display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;padding:20px 24px 24px 24px;border-radius:4px;${({ accentColor }) => accentColor &&\n `\n box-shadow: 0px 1px 3px rgba(55, 66, 77, 0.15), inset 4px 0px 0px ${accentColor};\n `} background-color:${({ backgroundColor }) => backgroundColor || 'white'};`;\nconst Row = styled(BaseContainer).withConfig({ displayName: \"vui--Row\", componentId: \"vui--9nzbbv\" }) `display:flex;flex-direction:row;`;\nconst Col = styled(BaseContainer).withConfig({ displayName: \"vui--Col\", componentId: \"vui--zplr21\" }) `display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;`;\nexport const IconCol = styled(Col).withConfig({ displayName: \"vui--IconCol\", componentId: \"vui--1j9d69e\" }) `svg{width:${sizes.md};height:${sizes.md};color:${({ accentColor }) => accentColor};}`;\nexport const ChildContainer = styled(BaseContainer).withConfig({ displayName: \"vui--ChildContainer\", componentId: \"vui--wt59q7\" }) `width:100%;`;\nconst HeaderCol = styled(Col).withConfig({ displayName: \"vui--HeaderCol\", componentId: \"vui--1wkol92\" }) `flex-grow:2;margin-right:12px;`;\nconst StyledText = styled(Text).withConfig({ displayName: \"vui--StyledText\", componentId: \"vui--150p0zs\" }) `position:relative;top:-2px;`;\nexport { BannerLayout as Pill, StyledText as Text, Row, Col, HeaderCol };\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { colors } from '../../theme/modules/colors';\nimport { Pill, Text, Row, Col, HeaderCol, ChildContainer, IconCol } from './styled';\nimport { Button } from '../Button';\nimport { CrossIcon } from '../../tempIcons/CrossIcon';\nimport { sizes } from '../../theme/modules/sizes';\nconst accentColors = {\n help: colors.secondary.blue.base,\n info: colors.neutral.ink.base,\n error: colors.secondary.red.base,\n success: colors.secondary.green.base,\n};\n/**\n * The `Banner` component was previously called `Alert` (and similarly `Pill`).\n */\nexport const Banner = (_a) => {\n var { type = 'info', text, icon, onClose, className, header, children, backgroundColor = 'white' } = _a, props = __rest(_a, [\"type\", \"text\", \"icon\", \"onClose\", \"className\", \"header\", \"children\", \"backgroundColor\"]);\n const accentColor = accentColors[type];\n return (React.createElement(Pill, Object.assign({ accentColor: accentColor, className: className, backgroundColor: backgroundColor }, props),\n React.createElement(Row, null,\n icon && (React.createElement(IconCol, { style: { marginRight: sizes.md }, accentColor: accentColor }, icon)),\n children ? (React.createElement(ChildContainer, null, children)) : (React.createElement(React.Fragment, null,\n React.createElement(HeaderCol, null, header || React.createElement(Text, { variant: \"headingSmall\" }, text)),\n React.createElement(Col, null, onClose && (React.createElement(Button, { variant: \"flat\", \"aria-label\": \"Close\", icon: React.createElement(CrossIcon, null), onClick: onClose }))))))));\n};\n//# sourceMappingURL=Banner.js.map","import styled from 'styled-components';\nimport { text } from '../../../theme/modules/text';\nexport const BreadcrumbsSC = styled.ul.withConfig({ displayName: \"vui--BreadcrumbsSC\", componentId: \"vui--16f283b\" }) `list-style:none;padding:0;margin:0;display:flex;align-items:center;font-family:${text.body.fontFamily};font-weight:${text.body.fontWeight};font-size:${text.body.fontSize};line-height:${text.body.lineHeight};`;\nexport const BreadcrumbSC = styled.li.withConfig({ displayName: \"vui--BreadcrumbSC\", componentId: \"vui--19n9row\" }) `display:flex;align-items:center;.separator{display:flex;align-items:center;padding:0px 0.4rem;}a{color:inherit;text-decoration:none;text-transform:capitalize;}a:hover{text-decoration:underline;}span{font-weight:600;text-transform:capitalize;}`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nexport const RightArrowIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M5.99994 11.06L9.05327 8L5.99994 4.94L6.93994 4L10.9399 8L6.93994 12L5.99994 11.06Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=RightArrowIcon.js.map","import React from 'react';\nimport { BreadcrumbSC } from './styled';\nexport const Breadcrumb = ({ children, title, LinkComponent, href }) => {\n if (LinkComponent) {\n return (React.createElement(BreadcrumbSC, { className: \"breadcrumb\" },\n React.createElement(LinkComponent, { href: href }, title),\n children));\n }\n return (React.createElement(BreadcrumbSC, { className: \"breadcrumb\" },\n title,\n children));\n};\n//# sourceMappingURL=Breadcrumb.js.map","import React from 'react';\nimport { BreadcrumbsSC } from './components/styled';\nimport { RightArrowIcon } from '../../tempIcons/RightArrowIcon';\nimport { sizes } from '../../theme/modules/sizes';\nimport { Breadcrumb } from './components/Breadcrumb';\nconst DefaultSeparator = () => (React.createElement(RightArrowIcon, { className: \"separator\", width: sizes.base, height: sizes.base }));\nconst DefaultLink = ({ children, href }) => React.createElement(\"a\", { href: href }, children);\nconst BreadcrumbText = ({ children }) => React.createElement(\"span\", null, children);\nexport const Breadcrumbs = ({ items, Separator = React.createElement(DefaultSeparator, null), LinkComponent = DefaultLink, }) => (React.createElement(BreadcrumbsSC, { className: \"breadcrumbs\" }, items.map((item, i) => (React.createElement(Breadcrumb, { key: item.title, title: item.title, href: item.pathname, LinkComponent: i !== items.length - 1 ? LinkComponent : BreadcrumbText }, items.length !== i + 1 && Separator)))));\n//# sourceMappingURL=Breadcrumbs.js.map","export var Alignments;\n(function (Alignments) {\n Alignments[\"start\"] = \"flex-start\";\n Alignments[\"center\"] = \"center\";\n Alignments[\"end\"] = \"flex-end\";\n Alignments[\"stretch\"] = \"stretch\";\n Alignments[\"between\"] = \"space-between\";\n Alignments[\"around\"] = \"space-around\";\n})(Alignments || (Alignments = {}));\n//# sourceMappingURL=Alignments.js.map","import styled from 'styled-components';\nimport { Alignments } from './Alignments';\nimport { theme } from '../../theme';\n/**\n * Layout component.\n */\nexport const Stack = styled.div.withConfig({ displayName: \"vui--Stack\", componentId: \"vui--ikbqaf\" }) `display:flex;${(props) => {\n const { direction = 'vertical', alignX = 'start', alignY = 'start', spacing = 'base' } = props;\n let alignItems;\n let justifyContent;\n let flexDirection;\n let itemFlex;\n let marginTop = '';\n let marginLeft = '';\n if (direction === 'vertical') {\n alignItems = alignX && Alignments[alignX];\n justifyContent = alignY && Alignments[alignY];\n marginTop = theme.sizes[spacing];\n flexDirection = 'column';\n }\n else {\n alignItems = alignY && Alignments[alignY];\n justifyContent = alignX && Alignments[alignX];\n marginLeft = theme.sizes[spacing];\n flexDirection = 'row';\n }\n // These options result in 'justify-content: stretch' which doesn't exist,\n // so instead we set the flex of child elements\n if ((direction === 'vertical' && alignY === 'stretch') ||\n (direction === 'horizontal' && alignX === 'stretch')) {\n itemFlex = 1;\n }\n return `\n align-items: ${alignItems};\n justify-content: ${justifyContent};\n flex-direction: ${flexDirection};\n\n & > * {\n flex: ${itemFlex};\n }\n\n & > * + * {\n margin-top: ${marginTop};\n margin-left: ${marginLeft};\n }\n `;\n}}`;\nStack.displayName = 'Stack';\n//# sourceMappingURL=Stack.js.map","import styled from 'styled-components';\nimport { Tooltip } from '../../Tooltip';\nimport { theme } from '../../../theme';\nconst alignMap = {\n top: 'flex-start',\n center: 'center',\n};\nexport const RootLayout = styled.div.withConfig({ displayName: \"vui--RootLayout\", componentId: \"vui--3b6yzv\" }) `display:flex;align-items:center;& > * + *{margin-left:${theme.sizes.base};}`;\nexport const InputLayout = styled.div.withConfig({ displayName: \"vui--InputLayout\", componentId: \"vui--8ngm7b\" }) `align-self:stretch;display:flex;align-items:${(props) => alignMap[props.align]};width:24px;height:24px;`;\nexport const AccessoryLayout = styled.div.withConfig({ displayName: \"vui--AccessoryLayout\", componentId: \"vui--1cu5xjr\" }) `align-self:center;display:flex;align-items:center;`;\nexport const TextLayout = styled.div.withConfig({ displayName: \"vui--TextLayout\", componentId: \"vui--1na6cp4\" }) `flex:1;& > * + *{margin-top:${theme.sizes.sm};}`;\nexport const LabelText = styled.span.withConfig({ displayName: \"vui--LabelText\", componentId: \"vui--1rasg4l\" }) `font-family:${theme.text.body.fontFamily};font-size:${theme.text.body.fontSize};font-weight:${theme.text.body.fontWeight};line-height:${theme.sizes.md};color:${theme.text.body.color};`;\nexport const HintText = styled.div.withConfig({ displayName: \"vui--HintText\", componentId: \"vui--13bynjq\" }) `font-family:${theme.fontFamily};font-size:${theme.sizes[3]};line-height:${theme.sizes[4]};color:${theme.colors.neutral.ink.light};`;\nexport const ErrorText = styled.div.withConfig({ displayName: \"vui--ErrorText\", componentId: \"vui--1kh3zgo\" }) `font-family:${theme.text.error.fontFamily};font-size:${theme.text.error.fontSize};font-weight:${theme.text.error.fontWeight};line-height:${theme.text.error.lineHeight};color:${theme.text.error.color};`;\nexport const Wrapper = styled.label.withConfig({ displayName: \"vui--Wrapper\", componentId: \"vui--ogz9oa\" }) `box-sizing:border-box;&:hover{cursor:${(props) => (props.disabled ? 'default' : 'pointer')};}`;\nexport const BorderedWrapper = styled(Wrapper).withConfig({ displayName: \"vui--BorderedWrapper\", componentId: \"vui--11xzxut\" }) `border:2px solid ${theme.colors.neutral.grey.dark};border-radius:${theme.radius.md};padding:${theme.sizes.base} 0.75rem;&:hover{border-color:${theme.colors.secondary.blue.base};}& ${LabelText}{font-weight:${theme.text.bodyBold.fontWeight};}`;\nexport const BlockTooltip = styled(Tooltip).withConfig({ displayName: \"vui--BlockTooltip\", componentId: \"vui--gms4qf\" }) `display:block;&-hoverable{display:block;}`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nexport const HelpIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M11 18H13V16H11V18ZM12 2C6.48 2 2 6.48 2 12C2 17.52 6.48 22 12 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 12 2ZM12 20C7.59 20 4 16.41 4 12C4 7.59 7.59 4 12 4C16.41 4 20 7.59 20 12C20 16.41 16.41 20 12 20ZM12 6C9.79 6 8 7.79 8 10H10C10 8.9 10.9 8 12 8C13.1 8 14 8.9 14 10C14 12 11 11.75 11 15H13C13 12.75 16 12.5 16 10C16 7.79 14.21 6 12 6Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=HelpIcon.js.map","import React from 'react';\nimport { Stack } from '../Stack';\nimport { theme } from '../../theme';\nimport { Wrapper, BorderedWrapper, RootLayout, InputLayout, AccessoryLayout, TextLayout, LabelText, HintText, ErrorText, BlockTooltip, } from './components/styled';\nimport { HelpIcon } from '../../tempIcons/HelpIcon';\nexport const Choice = ({ id, label, hint, tooltip, error, bordered, Badge, Accessory, Footer, children, disabled = false, }) => {\n const contentMarkup = (React.createElement(RootLayout, null,\n React.createElement(InputLayout, { align: Accessory ? 'center' : 'top' }, children),\n Accessory && React.createElement(AccessoryLayout, null, Accessory),\n label || hint || error || Badge || Footer ? (React.createElement(TextLayout, null,\n React.createElement(Stack, { direction: \"horizontal\", alignY: \"center\", spacing: \"sm\" },\n Badge,\n label && React.createElement(LabelText, null, label),\n tooltip && (React.createElement(BlockTooltip, { text: tooltip },\n React.createElement(HelpIcon, { name: \"help\", width: theme.sizes.base, color: theme.colors.neutral.ink.lightest })))),\n hint && React.createElement(HintText, null, hint),\n error && React.createElement(ErrorText, null, error),\n Footer)) : null));\n if (bordered) {\n return (React.createElement(BorderedWrapper, { disabled: disabled, htmlFor: id }, contentMarkup));\n }\n return (React.createElement(Wrapper, { disabled: disabled, htmlFor: id }, contentMarkup));\n};\n//# sourceMappingURL=Choice.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nconst { colors, sizes, radius } = theme;\nexport const Input = styled.input.withConfig({ displayName: \"vui--Input\", componentId: \"vui--bq2l9d\" }) `appearance:none;width:18px;height:18px;background-color:transparent;border:2px solid ${colors.neutral.ink.lightest};border-radius:${radius.base};cursor:pointer;flex-shrink:0;transition:box-shadow 0.1s,background-color 0.1s;&:checked{background-color:${colors.secondary.blue.base};border-color:${colors.secondary.blue.base};background-image:url(\"data:image/svg+xml;utf-8,<svg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M8.56846 16.3657L3.86697 11.6642L2.2998 13.2313L8.56846 19.5L22.0013 6.06716L20.4341 4.5L8.56846 16.3657Z' fill='white' /></svg>\");background-repeat:no-repeat;background-size:${sizes[4]};background-position:center;}&:hover{border-color:${colors.secondary.blue.base};}&:active{border-color:${colors.secondary.blue.base};}&:focus{box-shadow:0 0 0 4px ${colors.secondary.blue.light};outline:0;}&:indeterminate{background-color:${colors.secondary.blue.base};border-color:${colors.secondary.blue.base};background-image:url(\"data:image/svg+xml;utf-8,<svg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='5' y='11' width='14' height='3' fill='white'/></svg>\");background-repeat:no-repeat;background-size:${sizes[4]};background-position:center;}&:disabled{box-shadow:none;background-color:${colors.neutral.grey.base};border-color:${colors.neutral.grey.base};color:${colors.neutral.ink.light};cursor:default;}&:checked:disabled{background-image:url(\"data:image/svg+xml;utf-8,<svg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M8.56846 16.3657L3.86697 11.6642L2.2998 13.2313L8.56846 19.5L22.0013 6.06716L20.4341 4.5L8.56846 16.3657Z' fill='%23637381' /></svg>\");}&:indeterminate:disabled{background-image:url(\"data:image/svg+xml;utf-8,<svg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='5' y='11' width='14' height='3' fill='%23637381'/></svg>\");}`;\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React, { useCallback, useEffect, useMemo, useRef } from 'react';\nimport { Choice } from '../Choice';\nimport { Input } from './styled';\nimport { generateId } from '../../utils/generateId';\nexport const Checkbox = (_a) => {\n var { checked, indeterminate, value, name, disabled, ariaLabel, className, onChange } = _a, otherProps = __rest(_a, [\"checked\", \"indeterminate\", \"value\", \"name\", \"disabled\", \"ariaLabel\", \"className\", \"onChange\"]);\n const id = useMemo(() => generateId('checkbox'), []);\n const checkboxRef = useRef(null);\n const handleChange = useCallback((e) => {\n onChange(e.currentTarget.checked, value);\n }, [onChange, value]);\n useEffect(() => {\n if (!checkboxRef.current)\n return;\n if (indeterminate === true) {\n checkboxRef.current.indeterminate = true;\n return;\n }\n checkboxRef.current.indeterminate = false;\n }, [indeterminate]);\n return (React.createElement(Choice, Object.assign({ id: id, disabled: disabled }, otherProps),\n React.createElement(Input, { ref: checkboxRef, id: id, type: \"checkbox\", checked: checked, value: value, name: name, disabled: disabled, \"aria-label\": ariaLabel, className: className, onChange: handleChange })));\n};\n//# sourceMappingURL=Checkbox.js.map","import styled from 'styled-components';\nexport const Input = styled.input.withConfig({ displayName: \"vui--Input\", componentId: \"vui--14lc9u\" }) `appearance:none;box-sizing:border-box;flex-shrink:0;width:18px;height:18px;margin:3px;background-color:transparent;border:2px solid #637381;border-radius:50%;outline:none;cursor:pointer;flex-shrink:0;transition:box-shadow 0.1s;&:checked{position:relative;border-color:#0079d1;}&:checked::before{content:'';width:10px;height:10px;position:absolute;top:2px;left:2px;background-color:#0079d1;border-radius:50%;}&:hover{border-color:#0079d1;}&:active{border-color:#0079d1;}&:focus{box-shadow:0 0 0 4px #80bce8;outline:0;}&:disabled{box-shadow:none;background-color:#dfe3e8;border-color:#959fa8;cursor:default;}&:disabled::before{background-color:#637381;}`;\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React, { forwardRef, useCallback } from 'react';\nimport { Choice } from '../Choice';\nimport { Input } from './styled';\nimport { generateId } from '../../utils/generateId';\nexport const Radio = forwardRef((_a, ref) => {\n var { checked, value, name, disabled, onChange, id } = _a, otherProps = __rest(_a, [\"checked\", \"value\", \"name\", \"disabled\", \"onChange\", \"id\"]);\n const handleChange = useCallback((e) => {\n onChange(e.currentTarget.checked, value);\n }, [onChange, value]);\n const componentId = id !== null && id !== void 0 ? id : generateId('radio');\n return (React.createElement(Choice, Object.assign({ id: componentId, disabled: disabled }, otherProps),\n React.createElement(Input, { id: componentId, type: \"radio\", checked: checked, value: value, name: name, disabled: disabled, onChange: handleChange, ref: ref })));\n});\n//# sourceMappingURL=Radio.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nexport const Fieldset = styled.fieldset.withConfig({ displayName: \"vui--Fieldset\", componentId: \"vui--z1f13i\" }) `padding:0;display:flex;flex-direction:column;border:0;& > * + *{margin-top:16px;}`;\nexport const Legend = styled.legend.withConfig({ displayName: \"vui--Legend\", componentId: \"vui--snr02n\" }) `font-family:${theme.text.inputLabel.fontFamily};font-size:${theme.text.inputLabel.fontSize};font-style:${theme.text.inputLabel.fontStyle};font-weight:${theme.text.inputLabel.fontWeight};line-height:${theme.text.inputLabel.lineHeight};text-decoration:${theme.text.inputLabel.textDecoration};color:${theme.text.inputLabel.color};`;\n//# sourceMappingURL=styled.js.map","import React, { Component } from 'react';\nimport { Radio } from '../Radio';\nimport { Checkbox } from '../Checkbox';\nimport { Fieldset, Legend } from './styled';\nexport class ChoiceList extends Component {\n constructor() {\n super(...arguments);\n this.handleChange = (value, checked) => {\n const { allowMultiple } = this.props;\n if (allowMultiple) {\n this.handleChangeMultiple(value, checked);\n return;\n }\n this.handleChangeSingle(value, checked);\n };\n this.handleChangeSingle = (value, checked) => {\n const { onChange } = this.props;\n if (checked) {\n onChange([value]);\n }\n };\n this.handleChangeMultiple = (value, checked) => {\n const { selected, onChange } = this.props;\n let newSelected = [];\n if (checked) {\n newSelected = [...selected, value];\n }\n else {\n newSelected = selected.filter((selectedValue) => selectedValue !== value);\n }\n onChange(newSelected);\n };\n }\n render() {\n const { allowMultiple, options, selected, title, disabled, bordered } = this.props;\n const InputComponent = allowMultiple ? Checkbox : Radio;\n return (React.createElement(Fieldset, { disabled: disabled },\n title && React.createElement(Legend, null, title),\n options.map((option) => (React.createElement(InputComponent, Object.assign({ key: option.value, bordered: bordered, checked: selected.includes(option.value), onChange: (checked) => this.handleChange(option.value, checked) }, option))))));\n }\n}\n//# sourceMappingURL=ChoiceList.js.map","import React from 'react';\nexport const SuccessIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM14.7708 8L10.0856 13.2468L8.22925 11.1679L7 12.5445L10.0856 16L16 9.37661L14.7708 8ZM20.1818 12C20.1818 16.5187 16.5187 20.1818 12 20.1818C7.48131 20.1818 3.81818 16.5187 3.81818 12C3.81818 7.48131 7.48131 3.81818 12 3.81818C16.5187 3.81818 20.1818 7.48131 20.1818 12Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=SuccessIcon.js.map","import React from 'react';\nexport const ClipboardIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { d: \"M19 3H14.82C14.4 1.84 13.3 1 12 1C10.7 1 9.6 1.84 9.18 3H5C3.9 3 3 3.9 3 5V21C3 22.1 3.9 23 5 23H19C20.1 23 21 22.1 21 21V5C21 3.9 20.1 3 19 3ZM12 3C12.55 3 13 3.45 13 4C13 4.55 12.55 5 12 5C11.45 5 11 4.55 11 4C11 3.45 11.45 3 12 3ZM19 21H5V5H7V8H17V5H19V21Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=ClipboardIcon.js.map","import React, { useCallback } from 'react';\nimport styled from 'styled-components';\nimport { Tooltip } from '../Tooltip';\nimport { colors } from '../../theme/modules/colors';\nimport { SuccessIcon } from '../../tempIcons/SuccessIcon';\nimport { sizes } from '../../theme/modules/sizes';\nimport { Button } from '../Button';\nimport { ClipboardIcon } from '../../tempIcons/ClipboardIcon';\nconst iconSizes = { width: sizes.base, height: sizes.base };\n/**\n * Created in here to fix orders table sizes. Bad pattern to use in main button component, as\n * touch target is below A11y guidelines.\n */\nconst XSButton = styled(Button).withConfig({ displayName: \"vui--XSButton\", componentId: \"vui--n9oowl\" }) `padding:1px;height:unset;span{height:${sizes.base};width:${sizes.base};top:unset;}`;\n/**\n * A dynamic button to facilitate copying text to a users' keyboard when clicked.\n */\nexport const CopyToClipboard = ({ className, text, onCopy }) => {\n const [copied, setCopied] = React.useState(false);\n const handleCopy = useCallback(() => {\n navigator.clipboard.writeText(text);\n if (onCopy)\n onCopy();\n setCopied(true);\n setTimeout(() => setCopied(false), 2500);\n }, [onCopy, text]);\n return (React.createElement(Tooltip, { text: copied ? 'Copied!' : 'Copy to clipboard' },\n React.createElement(XSButton, { variant: \"flat\", size: \"sm\", className: className, \"aria-label\": `${copied ? 'Copied' : 'Copy'} \"${text}\" to clipboard`, icon: copied ? (React.createElement(SuccessIcon, Object.assign({ color: colors.secondary.green.base }, iconSizes))) : (React.createElement(ClipboardIcon, Object.assign({ color: colors.secondary.blue.base }, iconSizes))), onClick: handleCopy })));\n};\n//# sourceMappingURL=CopyToClipboard.js.map","export function alignmentToFlex(align) {\n switch (align) {\n case 'left':\n return 'flex-start';\n case 'center':\n return 'center';\n case 'right':\n return 'flex-end';\n default:\n return 'flex-start';\n }\n}\n//# sourceMappingURL=alignmentToFlex.js.map","export function parseWidth(width, fallback) {\n switch (typeof width) {\n case 'string':\n return width;\n case 'number':\n return `${width}px`;\n case 'object':\n return `minmax(${parseWidth(width.min, 'max-content')}, ${parseWidth(width.max)})`;\n default:\n return fallback || '1fr';\n }\n}\n//# sourceMappingURL=parseWidth.js.map","import { theme } from '../../../theme';\nimport { parseWidth } from './parseWidth';\nimport { sumAllAfterIndex, sumAllBeforeIndex } from './sumAll';\nexport function generateTableCss({ pinnedLeft, pinnedRight, cellWidths, scrollPosition, visible, stripingMode, }) {\n const pinnedLeftStyles = pinnedLeft.map((_, index) => `\n th:nth-child(${index + 1}),\n td:nth-child(${index + 1}) {\n position: sticky;\n left: ${cellWidths ? sumAllBeforeIndex(cellWidths, index + 1) : 0}px;\n z-index: 2;\n }\n `);\n const pinnedRightStyles = pinnedRight.map((_, index) => `\n th:nth-last-child(${index + 1}),\n td:nth-last-child(${index + 1}) {\n position: sticky;\n right: ${cellWidths ? sumAllAfterIndex(cellWidths, cellWidths.length - index) : 0}px;\n }\n `);\n const isLeftShadowVisible = scrollPosition !== 'start' && scrollPosition !== 'none';\n const leftShadow = `\n th:nth-child(${pinnedLeft.length})::after,\n td:nth-child(${pinnedLeft.length})::after {\n position: absolute;\n transform: translate(100%);\n top: 0;\n right: 0;\n bottom: -1px;\n width: 30px;\n content: \"\";\n pointer-events: none;\n box-sizing: border-box;\n box-shadow: ${isLeftShadowVisible ? 'inset 10px 0 10px -8px rgb(0 0 0 / 25%)' : 'none'};\n }\n `;\n const isRightShadowVisible = scrollPosition !== 'end' && scrollPosition !== 'none';\n const rightShadow = `\n th:nth-last-child(${pinnedRight.length})::after,\n td:nth-last-child(${pinnedRight.length})::after {\n position: absolute;\n transform: translate(-100%);\n top: 0;\n left: 0;\n bottom: -1px;\n width: 30px;\n content: \"\";\n pointer-events: none;\n box-sizing: border-box;\n box-shadow: ${isRightShadowVisible ? 'inset -10px 0 10px -8px rgb(0 0 0 / 25%)' : 'none'};\n }\n `;\n const stripingRow = `\n tr:nth-child(odd) > td {\n background-color: ${theme.colors.neutral.grey.lightest};\n }\n\n tr + tr > td {\n border-top: 1px solid ${theme.colors.neutral.grey.base};\n }\n `;\n const stripingNested = `\n tbody:nth-of-type(odd) > tr > td {\n background-color: ${theme.colors.neutral.grey.lightest};\n }\n\n tbody + tbody > tr:first-child > td {\n border-top: 1px solid ${theme.colors.neutral.grey.base};\n }\n `;\n return `\n grid-template-columns: ${visible.map((col) => parseWidth(col.width)).join(' ')};\n\n th::after, td::after {\n transition: box-shadow .3s;\n }\n\n ${pinnedLeft.length > 0 ? pinnedLeftStyles : ''}\n ${pinnedRight.length > 0 ? pinnedRightStyles : ''}\n\n ${leftShadow}\n ${rightShadow}\n\n ${stripingMode === 'nested' ? stripingNested : stripingRow}\n `;\n}\n//# sourceMappingURL=generateTableCss.js.map","export function sumAllBeforeIndex(array, index) {\n return array.slice(0, index - 1).reduce((acc, val) => acc + val, 0);\n}\nexport function sumAllAfterIndex(array, index) {\n return array.slice(index).reduce((acc, val) => acc + val, 0);\n}\n//# sourceMappingURL=sumAll.js.map","/* Sorting */\nexport var SortDirection;\n(function (SortDirection) {\n SortDirection[\"ascending\"] = \"ascending\";\n SortDirection[\"descending\"] = \"descending\";\n})(SortDirection || (SortDirection = {}));\n//# sourceMappingURL=types.js.map","import React from 'react';\nexport const DoubleArrowIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M5 10L8 13L11 10H5Z\", fill: \"currentColor\" }),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M11 6L8 3L5 6L11 6Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=DoubleArrowIconIcon.js.map","import React from 'react';\nexport const ArrowUpIcon = (props) => {\n return (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { d: \"M13 20V7.83L18.59 13.42L20 12L12 4L4 12L5.41 13.41L11 7.83L11 20H13Z\", fill: \"currentColor\" })));\n};\n//# sourceMappingURL=ArrowUpIcon.js.map","import React from 'react';\nexport const ArrowDownIcon = (props) => {\n return (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { d: \"M11 4V16.17L5.41 10.58L4 12L12 20L20 12L18.59 10.59L13 16.17L13 4H11Z\", fill: \"currentColor\" })));\n};\n//# sourceMappingURL=ArrowDownIcon.js.map","import React from 'react';\nimport { theme } from '../../../theme';\nimport { SortDirection } from '../types';\nimport { DoubleArrowIcon } from '../../../tempIcons/DoubleArrowIconIcon';\nimport { ArrowUpIcon } from '../../../tempIcons/ArrowUpIcon';\nimport { ArrowDownIcon } from '../../../tempIcons/ArrowDownIcon';\nexport const GetSortIcon = ({ sortState, columnId, size }) => {\n if (!sortState || sortState.columnId !== columnId)\n return React.createElement(DoubleArrowIcon, { size: size });\n if (sortState.direction === SortDirection.ascending) {\n return React.createElement(ArrowUpIcon, { color: theme.colors.neutral.ink.dark, size: size });\n }\n return React.createElement(ArrowDownIcon, { color: theme.colors.neutral.ink.dark, size: size });\n};\n//# sourceMappingURL=GetSortIcon.js.map","/* eslint-disable react-hooks/exhaustive-deps */\nimport { useEffect, useState } from 'react';\nimport throttle from 'lodash.throttle';\nimport ResizeObserver from 'resize-observer-polyfill';\nexport function useCellWidths(tableRef, containerRef) {\n const [cellWidths, setCellWidths] = useState([]);\n const updateCellWidths = () => {\n if (!tableRef.current)\n return;\n const cells = tableRef.current.querySelectorAll('tbody tr:first-child td');\n const widths = Array.from(cells).map((cell) => cell.getBoundingClientRect().width);\n setCellWidths(widths);\n };\n useEffect(() => {\n updateCellWidths();\n }, [tableRef.current]);\n // Update cell widths when container is resized.\n useEffect(() => {\n if (!containerRef.current)\n return;\n const resizeObserverCallback = throttle(updateCellWidths, 50); // Throttle events\n const resizeObserver = new ResizeObserver(resizeObserverCallback);\n resizeObserver.observe(containerRef.current);\n // eslint-disable-next-line consistent-return\n return () => resizeObserver.disconnect();\n }, [containerRef.current]);\n return cellWidths;\n}\n//# sourceMappingURL=useCellWidths.js.map","export function useColumns(columns) {\n const visible = columns.filter((col) => col.hidden !== true);\n const pinnedLeft = visible.filter((col) => col.pinned === 'left');\n const pinnedRight = visible.filter((col) => col.pinned === 'right');\n const notPinned = visible.filter((col) => col.pinned === 'none' || !col.pinned);\n return {\n visible: [...pinnedLeft, ...notPinned, ...pinnedRight],\n pinnedLeft,\n pinnedRight,\n };\n}\n//# sourceMappingURL=useColumns.js.map","import { useEffect } from 'react';\nexport function useDragToScroll(targetRef) {\n useEffect(() => {\n if (!targetRef.current)\n return;\n let isDragging = false;\n const scrollTarget = targetRef.current;\n const position = {\n left: 0,\n x: 0,\n };\n const mouseMoveHandler = (e) => {\n if (!scrollTarget)\n return;\n const dx = e.clientX - position.x;\n scrollTarget.scrollLeft = position.left - dx;\n if (!isDragging) {\n scrollTarget.style.cursor = 'grabbing';\n scrollTarget.style.userSelect = 'none';\n }\n isDragging = true;\n };\n const mouseUpHandler = () => {\n document.removeEventListener('mousemove', mouseMoveHandler);\n document.removeEventListener('mouseup', mouseUpHandler);\n isDragging = false;\n if (!scrollTarget)\n return;\n scrollTarget.style.removeProperty('cursor');\n scrollTarget.style.removeProperty('user-select');\n };\n const mouseDownHandler = (e) => {\n if (!scrollTarget)\n return;\n position.left = scrollTarget.scrollLeft;\n position.x = e.clientX;\n document.addEventListener('mousemove', mouseMoveHandler);\n document.addEventListener('mouseup', mouseUpHandler);\n };\n scrollTarget.addEventListener('mousedown', mouseDownHandler);\n /* eslint-disable-next-line consistent-return */\n return () => scrollTarget === null || scrollTarget === void 0 ? void 0 : scrollTarget.removeEventListener('mousedown', mouseDownHandler);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [targetRef.current]);\n}\n//# sourceMappingURL=useDragToScroll.js.map","/* eslint-disable consistent-return */\n/* eslint-disable react-hooks/exhaustive-deps */\nimport { useEffect, useState } from 'react';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport throttle from 'lodash.throttle';\nexport function useScrollPosition(containerRef) {\n const [scrollPosition, setScrollPosition] = useState('start');\n const updateScrollPosition = () => {\n if (!containerRef.current)\n return;\n const { width } = containerRef.current.getBoundingClientRect();\n const { scrollLeft, scrollWidth } = containerRef.current;\n if (scrollWidth < width) {\n setScrollPosition('none');\n return;\n }\n if (scrollLeft === 0) {\n setScrollPosition('start');\n return;\n }\n if (scrollLeft + width >= scrollWidth) {\n setScrollPosition('end');\n return;\n }\n setScrollPosition('middle');\n };\n useEffect(() => {\n if (!containerRef.current)\n return;\n containerRef.current.addEventListener('scroll', updateScrollPosition);\n return () => { var _a; return (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.removeEventListener('scroll', updateScrollPosition); };\n }, [containerRef.current]);\n useEffect(() => {\n if (!containerRef.current)\n return;\n const resizeObserverCallback = throttle(updateScrollPosition, 50);\n const resizeObserver = new ResizeObserver(resizeObserverCallback);\n resizeObserver.observe(containerRef.current);\n return () => resizeObserver.disconnect();\n }, [containerRef.current]);\n return { scrollPosition, containerRef };\n}\n//# sourceMappingURL=useScrollPosition.js.map","export const defaultCellSpacing = 3;\nexport const headerCellHeight = '56px';\nexport const footerCellHeight = '56px';\n//# sourceMappingURL=constants.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nimport { alignmentToFlex } from '../utils';\nimport { defaultCellSpacing, headerCellHeight } from '../constants';\nexport const Header = styled.th.withConfig({ displayName: \"vui--Header\", componentId: \"vui--ilge6b\" }) `height:${headerCellHeight};display:flex;align-items:center;justify-content:${({ align = 'left' }) => alignmentToFlex(align)};background-color:white;padding-left:${({ spacing = defaultCellSpacing }) => theme.sizes[spacing]};padding-right:${({ spacing = defaultCellSpacing }) => theme.sizes[spacing]};border-bottom:1px solid ${theme.colors.neutral.grey.base};grid-column-end:${({ span = 1 }) => `span ${span}`};`;\n//# sourceMappingURL=Header.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { Checkbox } from '../../Checkbox';\nimport { Header } from './Header';\nexport function SelectionHeader(_a) {\n var { selected, indeterminate, onChange, selectionMode } = _a, headerProps = __rest(_a, [\"selected\", \"indeterminate\", \"onChange\", \"selectionMode\"]);\n if (selectionMode === 'single')\n return React.createElement(Header, Object.assign({}, headerProps));\n return (React.createElement(Header, Object.assign({}, headerProps),\n React.createElement(Checkbox, { checked: selected, indeterminate: indeterminate, onChange: onChange })));\n}\n//# sourceMappingURL=SelectionHeader.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nimport { alignmentToFlex } from '../utils';\nimport { defaultCellSpacing, footerCellHeight } from '../constants';\nexport const Cell = styled.td.withConfig({ displayName: \"vui--Cell\", componentId: \"vui--3tw1b6\" }) `display:flex;align-items:center;justify-content:${({ align = 'left' }) => alignmentToFlex(align)};background-color:white;padding-bottom:var(--density);padding-top:var(--density);padding-left:${({ spacing = defaultCellSpacing }) => theme.sizes[spacing]};padding-right:${({ spacing = defaultCellSpacing }) => theme.sizes[spacing]};color:${theme.text.bodySmall.color};font-family:${theme.text.bodySmall.fontFamily};font-size:${theme.text.bodySmall.fontSize};font-style:${theme.text.bodySmall.fontStyle};font-weight:${theme.text.bodySmall.fontWeight};line-height:${theme.text.bodySmall.lineHeight};grid-column-end:${({ span = 1 }) => `span ${span}`};tfoot &{min-height:${footerCellHeight};border-top:1px solid ${theme.colors.secondary.blue.base};background-color:${theme.colors.neutral.grey.lightest};}`;\n//# sourceMappingURL=Cell.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { Checkbox } from '../../Checkbox';\nimport { Radio } from '../../Radio';\nimport { Cell } from './Cell';\nexport function SelectionCell(_a) {\n var { selected, rowId, onChange, selectionMode, disabled } = _a, cellProps = __rest(_a, [\"selected\", \"rowId\", \"onChange\", \"selectionMode\", \"disabled\"]);\n if (selectionMode === 'single') {\n return (React.createElement(Cell, Object.assign({}, cellProps),\n React.createElement(Radio, { value: rowId, checked: selected, disabled: disabled, onChange: onChange })));\n }\n return (React.createElement(Cell, Object.assign({}, cellProps),\n React.createElement(Checkbox, { value: rowId, checked: selected, disabled: disabled, onChange: onChange })));\n}\n//# sourceMappingURL=SelectionCell.js.map","/* eslint-disable react/destructuring-assignment */\nimport React from 'react';\nimport { SelectionHeader } from '../components/SelectionHeader';\nimport { SelectionCell } from '../components/SelectionCell';\nconst emptySelectionState = [[], () => { }];\nexport function useSelection({ selectionMode = 'multiple', selectionState, enabledRowIds, }) {\n const selectionEnabled = !!selectionState;\n const [selectedRowIds, setSelectedRowIds] = selectionState || emptySelectionState;\n // TODO: Memoise this\n const setSelected = (selected, rowId) => {\n if (rowId === undefined || rowId === null)\n return; // Can't use falsey, must allow number 0\n if (selected && selectionMode === 'single') {\n // Replace selectedRowIds with only the current rowId\n setSelectedRowIds([rowId]);\n return;\n }\n if (selected) {\n // Add rowId to selectedRowIds\n if (selectedRowIds.includes(rowId))\n return;\n const rowIds = [...selectedRowIds, rowId];\n setSelectedRowIds(rowIds);\n }\n else {\n // Remove rowIds from selectedRowIds\n const index = selectedRowIds.findIndex((id) => id === rowId);\n if (index < 0)\n return;\n const rowIds = [...selectedRowIds];\n rowIds.splice(index, 1);\n setSelectedRowIds(rowIds);\n }\n };\n // TODO: Memoise this\n const toggleAllSelected = () => {\n if (selectedRowIds.length === enabledRowIds.length) {\n setSelectedRowIds([]);\n return;\n }\n setSelectedRowIds(enabledRowIds);\n };\n // TODO: Memoise this\n const selectionColumn = {\n id: 'selection',\n title: 'Selection',\n width: '40px',\n align: 'center',\n pinned: 'left',\n renderHeader: (column, headerProps) => (React.createElement(SelectionHeader, Object.assign({}, headerProps, { selected: selectedRowIds.length === enabledRowIds.length, indeterminate: selectedRowIds.length > 0 && selectedRowIds.length < enabledRowIds.length, onChange: toggleAllSelected, selectionMode: selectionMode }))),\n renderCell: (row, cellProps, actions, rowState) => (React.createElement(SelectionCell, Object.assign({}, cellProps, { rowId: row.id, selected: rowState.selected, onChange: actions.setSelected, selectionMode: selectionMode, disabled: rowState.disabled }))),\n };\n return {\n selectionEnabled,\n selectedRowIds,\n selectionColumn,\n setSelected,\n };\n}\n//# sourceMappingURL=useSelection.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nexport const SortIndicator = styled.div.withConfig({ displayName: \"vui--SortIndicator\", componentId: \"vui--1x79m95\" }) `width:20px;height:20px;display:flex;align-items:center;justify-content:center;background-color:white;color:${theme.colors.neutral.ink.lightest};`;\nexport const HeaderContent = styled.span.withConfig({ displayName: \"vui--HeaderContent\", componentId: \"vui--1kiwwja\" }) `display:flex;height:28px;align-items:center;gap:4px;white-space:nowrap;color:${theme.text.headingTable.color};font-family:${theme.text.headingTable.fontFamily};font-size:${theme.text.headingTable.fontSize};font-style:${theme.text.headingTable.fontStyle};font-weight:${theme.text.headingTable.fontWeight};line-height:${theme.text.headingTable.lineHeight};`;\nexport const ClickableHeaderContent = styled(HeaderContent).attrs(() => ({\n as: 'button',\n type: 'button',\n})).withConfig({ displayName: \"vui--ClickableHeaderContent\", componentId: \"vui--p1ald0\" }) `appearance:none;padding:0;border:0;border-radius:4px;background-color:transparent;&:not(:disabled):hover{cursor:pointer;}&:hover ${SortIndicator}{background-color:${theme.colors.neutral.grey.light};color:${theme.colors.neutral.ink.base};}&:focus-visible{outline:0;box-shadow:0px 0px 0px 2px ${theme.colors.secondary.blue.light};}`;\n//# sourceMappingURL=ColumnHeader.js.map","import React from 'react';\nimport { Tooltip } from '../../Tooltip';\nimport { Header } from '../components/Header';\nimport { HeaderContent, ClickableHeaderContent, SortIndicator } from '../components/ColumnHeader';\nimport { getNextSortState, GetSortIcon } from '../utils';\n/**\n * Default renderer for table header cells\n *\n * @param column Column configuration object\n * @returns Header cell instance\n */\nexport function renderHeader({ column, sortState, onChangeSort, }) {\n if (column.sortable && !sortState) {\n throw new Error(`Column '${column.id}' is configured to be sortable but the 'sortState' prop is missing.`);\n }\n if (column.hidden) {\n return null;\n }\n const headerProps = {\n key: column.id.toString(),\n id: `datatable-header-${column.id}`,\n role: 'columnheader',\n align: column.align,\n spacing: column.spacing,\n className: column.sortable ? 'sortable' : undefined,\n };\n // If defined, use custom renderer\n if (column.renderHeader) {\n return column.renderHeader(column, headerProps);\n }\n const handleClickSort = () => {\n if (!sortState) {\n console.log('DataGrid::renderHeader::handleClickSort - sortState is not defined');\n return;\n }\n const nextSortState = getNextSortState({ sortState, columnId: column.id });\n if (!onChangeSort) {\n console.log('DataGrid::renderHeader::handleClickSort - onChangeSort is not defined');\n return;\n }\n onChangeSort(nextSortState);\n };\n const ColumnHeaderContent = column.sortable ? ClickableHeaderContent : HeaderContent;\n const columnHeaderProps = column.sortable ? { onClick: handleClickSort } : {};\n return (React.createElement(Header, Object.assign({}, headerProps),\n React.createElement(Tooltip, { text: column.tooltip },\n React.createElement(ColumnHeaderContent, Object.assign({}, columnHeaderProps),\n column.icon && column.icon,\n column.title && React.createElement(\"span\", null, column.title),\n column.sortable && (React.createElement(SortIndicator, null,\n React.createElement(GetSortIcon, { sortState: sortState, columnId: column.id, size: 5 })))))));\n}\n//# sourceMappingURL=renderHeader.js.map","import { SortDirection } from '../types';\nexport function getNextSortState({ sortState, columnId }) {\n const isColumnSame = sortState.columnId === columnId;\n const isDefaultDirection = sortState.direction === SortDirection.ascending;\n let newSortDirection = SortDirection.ascending;\n if (isColumnSame && isDefaultDirection) {\n newSortDirection = SortDirection.descending;\n }\n return { columnId, direction: newSortDirection };\n}\n//# sourceMappingURL=getNextSortState.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\n/* Loading content shimmer animation */\nconst shimmerLight = theme.colors.neutral.grey.base;\nconst shimmerDark = theme.colors.neutral.grey.dark;\nexport const LoadingCellContent = styled.div.withConfig({ displayName: \"vui--LoadingCellContent\", componentId: \"vui--1bv9ck1\" }) `height:20px;width:75%;border-radius:${theme.radius.base};background:${shimmerLight};background-image:linear-gradient(\\n to right,\\n ${shimmerLight} 0%,\\n ${shimmerDark} 20%,\\n ${shimmerLight} 40%,\\n ${shimmerLight} 100%\\n );background-repeat:no-repeat;background-size:800px 104px;animation-duration:1s;animation-fill-mode:forwards;animation-iteration-count:infinite;animation-name:placeholderShimmer;animation-timing-function:linear;@keyframes placeholderShimmer{0%{background-position:-468px 0;}100%{background-position:468px 0;}}`;\n//# sourceMappingURL=LoadingCellContent.js.map","import React, { useEffect, useState } from 'react';\nimport styled from 'styled-components';\nimport { theme } from '../../../theme';\nimport { renderHeader } from '../renderers/renderHeader';\nimport { headerCellHeight } from '../constants';\nconst Container = styled.div.withConfig({ displayName: \"vui--Container\", componentId: \"vui--uoc40o\" }) `display:grid;grid-template-columns:auto 1fr;align-items:center;position:absolute;top:0;left:0;right:0;z-index:50;height:${headerCellHeight};background-color:white;`;\nconst Content = styled.div.withConfig({ displayName: \"vui--Content\", componentId: \"vui--x1996k\" }) `width:100%;height:100%;display:flex;align-items:center;padding:0 0.5rem;border-bottom:1px solid ${theme.colors.neutral.grey.base};& > *{flex:1;}`;\nexport function ActionBar({ selectionColumn, intersectionTargetRef, containerRef, children, }) {\n var _a;\n const [isSticky, setIsSticky] = useState(false);\n useEffect(() => {\n if (!intersectionTargetRef.current)\n return;\n const callback = (entries) => {\n entries.forEach((entry) => {\n setIsSticky(!entry.isIntersecting);\n });\n };\n const intersectionObserver = new IntersectionObserver(callback);\n intersectionObserver.observe(intersectionTargetRef.current);\n /* eslint-disable-next-line consistent-return */\n return () => intersectionObserver.disconnect();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [intersectionTargetRef.current]);\n const containerRect = (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();\n const defaultPositionStyles = {\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n };\n const stickyPositionStyles = {\n position: 'fixed',\n top: 0,\n left: containerRect === null || containerRect === void 0 ? void 0 : containerRect.left,\n width: containerRect === null || containerRect === void 0 ? void 0 : containerRect.width,\n };\n const style = isSticky ? stickyPositionStyles : defaultPositionStyles;\n return (React.createElement(Container, { style: style },\n renderHeader({ column: selectionColumn }),\n React.createElement(Content, null, children)));\n}\n//# sourceMappingURL=ActionBar.js.map","import React from 'react';\nexport const VisiblityIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { d: \"M12 4.5C7 4.5 2.73 7.61 1 12C2.73 16.39 7 19.5 12 19.5C17 19.5 21.27 16.39 23 12C21.27 7.61 17 4.5 12 4.5ZM12 17C9.24 17 7 14.76 7 12C7 9.24 9.24 7 12 7C14.76 7 17 9.24 17 12C17 14.76 14.76 17 12 17ZM12 9C10.34 9 9 10.34 9 12C9 13.66 10.34 15 12 15C13.66 15 15 13.66 15 12C15 10.34 13.66 9 12 9Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=VisibilityIcon.js.map","import React from 'react';\nexport const VisiblityOffIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { d: \"M12 7C14.76 7 17 9.24 17 12C17 12.65 16.87 13.26 16.64 13.83L19.56 16.75C21.07 15.49 22.26 13.86 22.99 12C21.26 7.61 16.99 4.5 11.99 4.5C10.59 4.5 9.25 4.75 8.01 5.2L10.17 7.36C10.74 7.13 11.35 7 12 7ZM2 4.27L4.28 6.55L4.74 7.01C3.08 8.3 1.78 10.02 1 12C2.73 16.39 7 19.5 12 19.5C13.55 19.5 15.03 19.2 16.38 18.66L16.8 19.08L19.73 22L21 20.73L3.27 3L2 4.27ZM7.53 9.8L9.08 11.35C9.03 11.56 9 11.78 9 12C9 13.66 10.34 15 12 15C12.22 15 12.44 14.97 12.65 14.92L14.2 16.47C13.53 16.8 12.79 17 12 17C9.24 17 7 14.76 7 12C7 11.21 7.2 10.47 7.53 9.8ZM11.84 9.02L14.99 12.17L15.01 12.01C15.01 10.35 13.67 9.01 12.01 9.01L11.84 9.02Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=VisibilityOffIcon.js.map","import React from 'react';\nexport const ReorderIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { d: \"M3 15H21V13H3V15ZM3 19H21V17H3V19ZM3 11H21V9H3V11ZM3 5V7H21V5H3Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=ReorderIcon.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nexport const EmptyBodyContent = styled.div.withConfig({ displayName: \"vui--EmptyBodyContent\", componentId: \"vui--klb9dq\" }) `padding-top:${theme.sizes.lg};padding-bottom:${theme.sizes.lg};grid-column:${({ columnCount }) => `1 / span ${columnCount}`};display:flex;flex-direction:column;align-items:center;justify-content:center;gap:${theme.sizes.md};`;\nexport const EmptyBodyGlyphWrapper = styled.div.withConfig({ displayName: \"vui--EmptyBodyGlyphWrapper\", componentId: \"vui--12lmw1\" }) `padding:${theme.sizes.md};background-color:${theme.colors.neutral.grey.light};border-radius:${theme.radius.full};`;\n//# sourceMappingURL=EmptyBodyContent.js.map","import styled from 'styled-components';\nexport const NoWrap = styled.div.withConfig({ displayName: \"vui--NoWrap\", componentId: \"vui--kbcaqo\" }) `white-space:nowrap;`;\n//# sourceMappingURL=NoWrap.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nexport const Row = styled.tr.withConfig({ displayName: \"vui--Row\", componentId: \"vui--9t9651\" }) `display:contents;${({ selected }) => selected &&\n `\n &&&& > td {\n background-color: ${theme.colors.brand.blue.lightest};\n }\n `};${({ accentColor }) => accentColor &&\n `\n &> *:first-child {\n position: relative;\n }\n\n & > *:first-child::before {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n width: 4px;\n background-color: ${accentColor};\n }\n `}`;\n//# sourceMappingURL=Row.js.map","import styled from 'styled-components';\nexport const ScrollContainer = styled.div.withConfig({ displayName: \"vui--ScrollContainer\", componentId: \"vui--1lne8xk\" }) `position:relative;width:100%;overflow-x:auto;overflow-y:hidden;`;\n//# sourceMappingURL=ScrollContainer.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nconst defaultDensity = 'base';\nexport const TableGrid = styled.table.withConfig({ displayName: \"vui--TableGrid\", componentId: \"vui--15hxahr\" }) `min-width:100%;width:max-content;display:grid;& thead,& tbody,& tfoot{display:contents;}--density:${theme.sizes[defaultDensity]};&& tr:hover td{background-color:#f2f8fc;}${({ css }) => css}`;\n//# sourceMappingURL=TableGrid.js.map","import styled from 'styled-components';\nexport const Truncate = styled.div.withConfig({ displayName: \"vui--Truncate\", componentId: \"vui--coqvc6\" }) `overflow:hidden;text-overflow:ellipsis;white-space:nowrap;`;\n//# sourceMappingURL=Truncate.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nconst borderModeStyles = {\n full: `border-width: 1px; border-radius: ${theme.radius.base};`,\n vertical: 'border-width: 0; border-top-width: 1px; border-bottom-width: 1px;',\n none: 'border-width: 0;',\n};\nexport const Wrapper = styled.div.withConfig({ displayName: \"vui--Wrapper\", componentId: \"vui--nnuzgr\" }) `width:100%;position:relative;border-style:solid;border-color:${theme.colors.neutral.grey.dark};${({ borderMode = 'full' }) => borderModeStyles[borderMode]} &,& *{box-sizing:border-box;}`;\n//# sourceMappingURL=Wrapper.js.map","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useEffect, useRef, useState } from 'react';\nimport throttle from 'lodash.throttle';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport { theme } from '../../../theme';\nimport { headerCellHeight } from '../constants';\nimport { TableGrid } from './TableGrid';\nexport function StickyHead({ children, intersectionTargetRef, containerRef, cellWidths, tableCss, }) {\n const stickyContainerRef = useRef(null);\n const [isVisible, setIsVisible] = useState(false);\n const [containerRect, setContainerRect] = useState({\n top: 0,\n left: 0,\n width: 0,\n height: 0,\n });\n const updateContainerDimensions = () => {\n var _a;\n const targetRect = (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();\n const newRect = {\n left: (targetRect === null || targetRect === void 0 ? void 0 : targetRect.left) || 0,\n width: (targetRect === null || targetRect === void 0 ? void 0 : targetRect.width) || 0,\n top: 0,\n height: 48,\n };\n setContainerRect(newRect);\n };\n const updateContainerScrollPosition = () => {\n var _a;\n if (!containerRef.current)\n return;\n const xScrollOffset = containerRef.current.scrollLeft;\n (_a = stickyContainerRef.current) === null || _a === void 0 ? void 0 : _a.scrollTo(xScrollOffset, 0);\n };\n // Configure intersection observer to toggle sticky header on/off\n useEffect(() => {\n if (!intersectionTargetRef.current)\n return;\n const options = {\n threshold: 1.0,\n };\n const intersectionCallback = (entries) => {\n entries.forEach((entry) => {\n setIsVisible(!entry.isIntersecting);\n });\n };\n const intersectionObserver = new IntersectionObserver(intersectionCallback, options);\n intersectionObserver.observe(intersectionTargetRef.current);\n return () => intersectionObserver.disconnect(); // eslint-disable-line consistent-return\n }, [intersectionTargetRef.current]);\n // Calculate sticky header position and size to match table container\n useEffect(() => {\n if (!isVisible)\n return;\n if (!containerRef.current)\n return;\n updateContainerDimensions();\n }, [containerRef.current, isVisible]);\n // Update dimensions when container element is resized\n useEffect(() => {\n if (!isVisible)\n return;\n if (!containerRef.current)\n return;\n const resizeObserverCallback = throttle(updateContainerDimensions, 33); // Throttle events\n const resizeObserver = new ResizeObserver(resizeObserverCallback);\n resizeObserver.observe(containerRef.current);\n return () => resizeObserver.disconnect(); // eslint-disable-line consistent-return\n }, [containerRef.current, isVisible]);\n // Sync container scrolling\n useEffect(() => {\n updateContainerScrollPosition();\n }, [isVisible]);\n useEffect(() => {\n var _a;\n (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.addEventListener('scroll', updateContainerScrollPosition);\n return () => {\n var _a;\n (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.removeEventListener('scroll', updateContainerScrollPosition);\n };\n }, [containerRef.current]);\n // Render sticky header\n if (!isVisible)\n return null;\n const containerStyle = Object.assign(Object.assign({}, containerRect), { height: headerCellHeight, position: 'fixed', zIndex: 5, overflowX: 'hidden', overflowY: 'hidden', borderBottom: `1px solid ${theme.colors.neutral.grey.base}` });\n // Generate styles to sync sticky columns with \"real\" columns\n const columnsCss = cellWidths\n .map((width, index) => `\n & th:nth-child(${index + 1}) {\n width: ${width}px;\n }\n `)\n .join('');\n // Append to generated table styles\n const allCss = tableCss + columnsCss;\n return (React.createElement(\"div\", { style: containerStyle, ref: stickyContainerRef },\n React.createElement(TableGrid, { css: allCss },\n React.createElement(\"thead\", null, children))));\n}\n//# sourceMappingURL=StickyHead.js.map","export const getRowState = (rowId, { selectedRowIds, expandedRowIds, disabledRowIds, }) => {\n const rowState = {\n selected: (selectedRowIds === null || selectedRowIds === void 0 ? void 0 : selectedRowIds.includes(rowId)) || false,\n expanded: (expandedRowIds === null || expandedRowIds === void 0 ? void 0 : expandedRowIds.includes(rowId)) || false,\n disabled: (disabledRowIds === null || disabledRowIds === void 0 ? void 0 : disabledRowIds.includes(rowId)) || false,\n };\n return rowState;\n};\n//# sourceMappingURL=getRowState.js.map","import React from 'react';\nexport const InfoIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M2 12C2 6.48 6.48 2 12 2C17.52 2 22 6.48 22 12C22 17.52 17.52 22 12 22C6.48 22 2 17.52 2 12ZM4 12C4 16.41 7.59 20 12 20C16.41 20 20 16.41 20 12C20 7.59 16.41 4 12 4C7.59 4 4 7.59 4 12Z\", fill: \"currentColor\" }),\n React.createElement(\"circle\", { cx: \"12\", cy: \"7\", r: \"1\", fill: \"currentColor\" }),\n React.createElement(\"path\", { d: \"M10 16H11V11H10V10H13V16H14V17H10V16Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=InfoIcon.js.map","/* eslint-disable jsx-a11y/no-redundant-roles */\nimport React, { useRef } from 'react';\nimport { Stack } from '../Stack';\nimport { Text } from '../Text';\nimport { generateTableCss } from './utils';\nimport { useCellWidths, useColumns, useDragToScroll, useScrollPosition, useSelection, } from './hooks';\nimport { renderCell, renderFooter, renderHeader, renderLoadingCell, renderNestedCell, } from './renderers';\nimport { ActionBar } from './components/ActionBar';\nimport { Cell } from './components/Cell';\nimport { ColumnMenu } from './components/ColumnMenu';\nimport { EmptyBodyContent, EmptyBodyGlyphWrapper } from './components/EmptyBodyContent';\nimport { Header } from './components/Header';\nimport { NoWrap } from './components/NoWrap';\nimport { Row } from './components/Row';\nimport { ScrollContainer } from './components/ScrollContainer';\nimport { TableGrid } from './components/TableGrid';\nimport { Truncate } from './components/Truncate';\nimport { Wrapper } from './components/Wrapper';\nimport { SelectionCell } from './components/SelectionCell';\nimport { SelectionHeader } from './components/SelectionHeader';\nimport { StickyHead } from './components/StickyHead';\nimport { getRowState } from './utils/getRowState';\nimport { InfoIcon } from '../../tempIcons/InfoIcon';\nconst defaultEmptyState = {\n icon: React.createElement(InfoIcon, { width: 48, height: 48 }),\n heading: 'No results',\n};\nconst emptyAction = () => { };\nexport const DataTable = ({ ActionBarSlot, borderMode, columns, emptyState = defaultEmptyState, expandedRowIds, loading, loadingRowCount, onChangeSort, rows, disabledRowIds, selectionMode, selectionState, setExpanded, sortState, stripingMode, enableStickyHeader, }) => {\n // Refs\n const scrollContainerRef = useRef(null);\n const tableRef = useRef(null);\n const intersectionTargetRef = useRef(null);\n useDragToScroll(scrollContainerRef);\n // Configure row selection\n const enabledRowIds = rows.map((row) => row.id).filter((id) => !(disabledRowIds === null || disabledRowIds === void 0 ? void 0 : disabledRowIds.includes(id)));\n const { selectionEnabled, selectedRowIds, selectionColumn, setSelected } = useSelection({\n selectionMode,\n selectionState,\n enabledRowIds,\n });\n // Assign actions\n const actions = {\n setSelected: setSelected || emptyAction,\n setExpanded: setExpanded || emptyAction,\n };\n // Process columns\n const columnsWithSelection = [selectionColumn, ...columns];\n const allColumns = selectionEnabled ? columnsWithSelection : columns;\n const cellWidths = useCellWidths(tableRef, scrollContainerRef);\n const { visible, pinnedLeft, pinnedRight } = useColumns(allColumns);\n // Generate styles\n const { scrollPosition } = useScrollPosition(scrollContainerRef);\n const tableCss = generateTableCss({\n pinnedLeft,\n pinnedRight,\n cellWidths,\n scrollPosition,\n visible,\n stripingMode,\n });\n // Render states\n if (loading) {\n const loadingRows = new Array(loadingRowCount).fill(true).map(() => ({\n // generate random ID forcing all rows to re-render avoid animation de-sync\n id: Math.random() * 1000,\n data: null,\n }));\n return (React.createElement(Wrapper, { borderMode: borderMode },\n React.createElement(ScrollContainer, { ref: scrollContainerRef },\n React.createElement(TableGrid, { css: tableCss, ref: tableRef, role: \"table\" },\n React.createElement(\"thead\", { role: \"rowgroup\" },\n React.createElement(Row, { role: \"row\" }, visible.map((column) => renderHeader({ column, sortState, onChangeSort })))),\n React.createElement(\"tbody\", { role: \"rowgroup\" }, loadingRows.map((row) => (React.createElement(Row, { key: row.id }, visible.map((col) => renderLoadingCell(row, col))))))))));\n }\n if (rows.length === 0) {\n return (React.createElement(Wrapper, { borderMode: borderMode },\n React.createElement(ScrollContainer, { ref: scrollContainerRef },\n React.createElement(TableGrid, { css: tableCss, ref: tableRef, role: \"table\" },\n React.createElement(\"thead\", { role: \"rowgroup\" },\n React.createElement(Row, { role: \"row\" }, visible.map((column) => renderHeader({ column, sortState, onChangeSort })))),\n React.createElement(\"tbody\", { role: \"rowgroup\" },\n React.createElement(EmptyBodyContent, { columnCount: visible.length },\n React.createElement(EmptyBodyGlyphWrapper, null, emptyState.icon),\n React.createElement(Stack, { spacing: \"sm\", alignX: \"center\" },\n React.createElement(Text, { variant: \"headingMedium\" }, emptyState.heading),\n emptyState.subheading && (React.createElement(Text, { variant: \"subheadingMedium\" }, emptyState.subheading)))))))));\n }\n const renderRow = (row) => {\n const { e2eClassName = '', accentColor } = row;\n const rowState = getRowState(row.id, { selectedRowIds, expandedRowIds, disabledRowIds });\n return (React.createElement(Row, Object.assign({ role: \"row\", key: row.id, accentColor: accentColor, className: e2eClassName }, rowState), visible.map((col) => renderCell(row, col, actions, rowState))));\n };\n const renderNestedRow = (nestedRow, rowId) => {\n var _a, _b;\n const nestedRowE2eClassName = (_b = (_a = nestedRow === null || nestedRow === void 0 ? void 0 : nestedRow.data) === null || _a === void 0 ? void 0 : _a.e2eClassNames) === null || _b === void 0 ? void 0 : _b.row;\n const rowState = getRowState(rowId, { selectedRowIds, expandedRowIds, disabledRowIds });\n return (React.createElement(Row, { role: \"row\", key: nestedRow.id, className: nestedRowE2eClassName }, visible.map((col) => renderNestedCell(nestedRow, col, rowState))));\n };\n const renderSection = (row) => {\n var _a;\n const isExpanded = expandedRowIds === null || expandedRowIds === void 0 ? void 0 : expandedRowIds.includes(row.id);\n return (React.createElement(\"tbody\", { role: \"rowgroup\", key: row.id },\n renderRow(row),\n isExpanded && ((_a = row.nestedRows) === null || _a === void 0 ? void 0 : _a.map((nestedRow) => renderNestedRow(nestedRow, row.id)))));\n };\n const renderBody = () => {\n const hasNestedRows = !!expandedRowIds;\n const hasMultipleSections = hasNestedRows && stripingMode === 'nested';\n if (hasMultipleSections) {\n return rows.map(renderSection);\n }\n if (hasNestedRows) {\n return (React.createElement(\"tbody\", { role: \"rowgroup\" }, rows.map((row) => {\n var _a;\n const rowElement = renderRow(row);\n const isExpanded = expandedRowIds === null || expandedRowIds === void 0 ? void 0 : expandedRowIds.includes(row.id);\n const nestedRowElements = (isExpanded &&\n ((_a = row.nestedRows) === null || _a === void 0 ? void 0 : _a.map((nestedRow) => renderNestedRow(nestedRow, row.id)))) ||\n [];\n return [rowElement, ...nestedRowElements];\n })));\n }\n return React.createElement(\"tbody\", { role: \"rowgroup\" }, rows.map(renderRow));\n };\n const headersMarkup = (React.createElement(Row, { role: \"row\" }, visible.map((column) => renderHeader({ column, sortState, onChangeSort }))));\n const shouldRenderFooter = columns.some((column) => !!column.renderFooter);\n const shouldRenderActionBar = selectedRowIds.length > 0 && !!ActionBarSlot;\n return (React.createElement(Wrapper, { borderMode: borderMode },\n shouldRenderActionBar && (React.createElement(ActionBar, { selectionColumn: selectionColumn, intersectionTargetRef: intersectionTargetRef, containerRef: scrollContainerRef }, ActionBarSlot)),\n React.createElement(ScrollContainer, { ref: scrollContainerRef },\n enableStickyHeader && (React.createElement(StickyHead, { tableCss: tableCss, intersectionTargetRef: intersectionTargetRef, containerRef: scrollContainerRef, cellWidths: cellWidths }, headersMarkup)),\n React.createElement(\"div\", { ref: intersectionTargetRef, style: { height: 0 } }),\n React.createElement(TableGrid, { css: tableCss, ref: tableRef, role: \"table\" },\n React.createElement(\"thead\", { role: \"rowgroup\" }, headersMarkup),\n renderBody(),\n shouldRenderFooter && (React.createElement(\"tfoot\", { role: \"rowgroup\" },\n React.createElement(Row, { role: \"row\" }, visible.map((column) => renderFooter({ column })))))))));\n};\nDataTable.defaultProps = {\n loading: false,\n loadingRowCount: 5,\n selectionMode: 'multiple',\n stripingMode: 'row',\n enableStickyHeader: true,\n};\nDataTable.Cell = Cell;\nDataTable.ColumnMenu = ColumnMenu;\nDataTable.SelectionCell = SelectionCell;\nDataTable.SelectionHeader = SelectionHeader;\nDataTable.Header = Header;\nDataTable.Truncate = Truncate;\nDataTable.NoWrap = NoWrap;\n//# sourceMappingURL=DataTable.js.map","import React from 'react';\nimport { Cell } from '../components/Cell';\nimport { LoadingCellContent } from '../components/LoadingCellContent';\n/**\n * Default renderer for loading cells\n * @param row\n * @param column\n * @returns\n */\nexport function renderLoadingCell(row, column) {\n if (column.hidden === true) {\n return null;\n }\n const cellProps = {\n align: column.align,\n key: `${row.id}-${column.id}`,\n role: 'cell',\n spacing: column.spacing,\n };\n return (React.createElement(Cell, Object.assign({}, cellProps),\n React.createElement(LoadingCellContent, null)));\n}\n//# sourceMappingURL=renderLoadingCell.js.map","/**\n * Default renderer for table cells\n *\n * @param row\n * @param column\n * @returns\n */\nexport function renderCell(row, column, actions, rowState) {\n if (column.hidden) {\n return null;\n }\n const cellProps = {\n align: column.align,\n key: `${row.id}-${column.id}`,\n role: 'cell',\n spacing: column.spacing,\n span: column.span,\n };\n return column.renderCell(row, cellProps, actions, rowState);\n}\n//# sourceMappingURL=renderCell.js.map","import React from 'react';\nimport { Cell } from '../components/Cell';\n/**\n * Default renderer for table cells in nested rows\n *\n * @param nestedRow\n * @param column\n * @returns\n */\nexport function renderNestedCell(nestedRow, column, rowState) {\n if (column.hidden) {\n return null;\n }\n const cellProps = {\n align: column.align,\n key: `${nestedRow.id}-${column.id}`,\n role: 'cell',\n spacing: column.spacing,\n };\n if (!column.renderNestedCell) {\n return React.createElement(Cell, Object.assign({}, cellProps));\n }\n return column.renderNestedCell(nestedRow, cellProps, rowState);\n}\n//# sourceMappingURL=renderNestedCell.js.map","import React from 'react';\nimport { Cell } from '../components/Cell';\n/**\n * Default renderer for table footer cells\n *\n * @param column Column configuration object\n * @returns Footer cell instance\n */\nexport function renderFooter({ column }) {\n if (column.hidden) {\n return null;\n }\n const footerProps = {\n key: column.id,\n role: 'cell',\n align: column.align,\n spacing: column.spacing,\n };\n if (!column.renderFooter) {\n return React.createElement(Cell, Object.assign({}, footerProps));\n }\n return column.renderFooter(column, footerProps);\n}\n//# sourceMappingURL=renderFooter.js.map","import React, { useState } from 'react';\nimport { Button } from '../../Button';\nimport { Card } from '../../Card';\nimport { Popover } from '../../Popover';\nimport { Stack } from '../../Stack';\nimport { theme } from '../../../theme';\nimport { VisiblityIcon } from '../../../tempIcons/VisibilityIcon';\nimport { VisiblityOffIcon } from '../../../tempIcons/VisibilityOffIcon';\nimport { ReorderIcon } from '../../../tempIcons/ReorderIcon';\nexport function ColumnMenu({ columns, columnGroups, setColumns }) {\n const [popoverAnchor, setPopoverAnchor] = useState(null);\n const [showPopover, setShowPopover] = useState(false);\n const columnEntries = columns.map((column) => [column.id, column]);\n const columnsMap = Object.fromEntries(columnEntries);\n const groups = columnGroups.map((group) => group.map((columnId) => columnsMap[columnId]));\n const setHidden = (groupIndex, hidden) => {\n const columnIds = groups[groupIndex].map((column) => column.id);\n const newColumns = [...columns];\n columnIds.forEach((columnId) => {\n const index = newColumns.findIndex((column) => column.id === columnId);\n if (index < 0)\n return;\n newColumns[index] = Object.assign(Object.assign({}, newColumns[index]), { hidden });\n });\n setColumns(newColumns);\n };\n return (React.createElement(React.Fragment, null,\n React.createElement(Button, { ref: setPopoverAnchor, dropdown: true, onClick: () => setShowPopover(true) }, \"Columns\"),\n showPopover && (React.createElement(Popover, { anchorElement: popoverAnchor, onShouldClose: () => setShowPopover(false) },\n React.createElement(Card, { style: { width: 600 } },\n React.createElement(Stack, { alignX: \"stretch\", spacing: \"sm\" }, groups.map((group, groupIndex) => (React.createElement(Stack, { key: group[0].id, direction: \"horizontal\", alignY: \"center\", spacing: \"sm\", style: {\n border: '1px solid black',\n padding: 8,\n } },\n React.createElement(Button, { variant: \"flat\", icon: React.createElement(ReorderIcon, null) }),\n React.createElement(Stack, { spacing: \"sm\", style: { flex: 1 } }, group.map((column) => (React.createElement(\"div\", { key: column.id }, column.title)))),\n React.createElement(Stack, { direction: \"horizontal\", spacing: \"sm\" }, group[0].hidden ? (React.createElement(Button, { variant: \"flat\", icon: React.createElement(VisiblityOffIcon, null), onClick: () => setHidden(groupIndex, false), style: { color: theme.colors.neutral.ink.lightest } })) : (React.createElement(Button, { variant: \"flat\", icon: React.createElement(VisiblityIcon, null), onClick: () => setHidden(groupIndex, true) }))))))))))));\n}\n//# sourceMappingURL=ColumnMenu.js.map","import React from 'react';\nimport styled from 'styled-components';\nimport { theme } from '../../theme';\nconst List = styled.dl.withConfig({ displayName: \"vui--List\", componentId: \"vui--1lcnd5n\" }) `margin:unset;& > * + *{margin-top:${theme.sizes.base};}`;\nconst Item = styled.div.withConfig({ displayName: \"vui--Item\", componentId: \"vui--t25k5o\" }) `& > * + *{margin-top:${theme.sizes.xs};}`;\nconst ItemRow = styled.div.withConfig({ displayName: \"vui--ItemRow\", componentId: \"vui--j013c4\" }) `display:flex;justify-content:space-between;& > * + *{margin-left:${theme.sizes.base};}`;\nconst DescriptionContainer = styled.div.withConfig({ displayName: \"vui--DescriptionContainer\", componentId: \"vui--12tjaz\" }) `text-align:right;& > * + *{margin-top:${theme.sizes.xs};}`;\nconst Term = styled.dt.withConfig({ displayName: \"vui--Term\", componentId: \"vui--zavj5i\" }) `font-family:${theme.text.bodyBold.fontFamily};font-size:${theme.text.bodyBold.fontSize};font-weight:${theme.text.bodyBold.fontWeight};line-height:${theme.text.bodyBold.lineHeight};color:${theme.text.bodyBold.color};`;\nconst Description = styled.dd.withConfig({ displayName: \"vui--Description\", componentId: \"vui--7wguee\" }) `margin-left:unset;font-family:${theme.text.body.fontFamily};font-size:${theme.text.body.fontSize};font-weight:${theme.text.body.fontWeight};line-height:${theme.text.body.lineHeight};color:${theme.text.body.color};`;\nexport const DescriptionList = ({ items, horizontal }) => {\n const renderDescription = (description) => {\n if (Array.isArray(description)) {\n return description.map((d) => React.createElement(Description, { key: d }, d));\n }\n return React.createElement(Description, null, description);\n };\n const renderItem = (item) => {\n if (horizontal) {\n return (React.createElement(ItemRow, { key: item.term },\n React.createElement(Term, null, item.term),\n React.createElement(DescriptionContainer, null, renderDescription(item.description))));\n }\n return (React.createElement(Item, { key: item.term },\n React.createElement(Term, null, item.term),\n renderDescription(item.description)));\n };\n return React.createElement(List, null, items.map(renderItem));\n};\n//# sourceMappingURL=DescriptionList.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nconst { sizes, colors } = theme;\nexport const ColumnGrid = styled.div.withConfig({ displayName: \"vui--ColumnGrid\", componentId: \"vui--1tbr7pe\" }) `width:100%;display:grid;grid-template-columns:${({ showSidebar = true }) => showSidebar ? `calc(100% - 312px - ${sizes.md}) 312px` : '100% 312px'};align-items:flex-start;grid-gap:${sizes.md};transition:all 0.2s ease-in-out;& > *:nth-child(2){opacity:${({ showSidebar = true }) => (showSidebar ? '1.0' : '0')};transition:opacity 0.2s;}`;\nexport const ContentContainer = styled.div.withConfig({ displayName: \"vui--ContentContainer\", componentId: \"vui--qefy7h\" }) `width:100%;box-sizing:border-box;padding:${sizes.md};overflow-x:hidden;background-color:${colors.neutral.grey.lightest};`;\n//# sourceMappingURL=styled.js.map","import styled from 'styled-components';\nexport const InputGroup = styled.div.withConfig({ displayName: \"vui--InputGroup\", componentId: \"vui--2b6aqg\" }) `display:flex;& > *{margin-left:0;margin-right:0;box-shadow:none;}& > *:not(:last-child){border-right-width:0 !important;}& > *:hover{}& > *:focus,& > *:active{z-index:5;border-right-width:1px !important;}& > *:focus + *,& > *:active + *{border-left-width:0 !important;}& > *:not(:first-child):not(:last-child){border-top-left-radius:0 !important;border-top-right-radius:0 !important;border-bottom-left-radius:0 !important;border-bottom-right-radius:0 !important;}& > *:first-child{border-top-right-radius:0 !important;border-bottom-right-radius:0 !important;}& > *:last-child{border-top-left-radius:0 !important;border-bottom-left-radius:0 !important;}`;\n//# sourceMappingURL=index.js.map","export var ComponentSize;\n(function (ComponentSize) {\n ComponentSize[\"base\"] = \"base\";\n ComponentSize[\"sm\"] = \"sm\";\n})(ComponentSize || (ComponentSize = {}));\n//# sourceMappingURL=types.js.map","import styled from 'styled-components';\nimport { Stack } from '../../components/Stack';\nimport { Tooltip } from '../../components/Tooltip';\nimport { theme } from '../../theme';\nexport const Label = styled.label.withConfig({ displayName: \"vui--Label\", componentId: \"vui--u4z5d7\" }) `display:block;font-family:${theme.text.inputLabel.fontFamily};font-size:${theme.text.inputLabel.fontSize};font-weight:${theme.text.inputLabel.fontWeight};line-height:${theme.text.inputLabel.lineHeight};color:${theme.text.inputLabel.color};`;\nexport const Hint = styled.span.withConfig({ displayName: \"vui--Hint\", componentId: \"vui--dhtep4\" }) `display:block;font-family:${theme.fontFamily};font-size:${theme.sizes[3]};line-height:${theme.sizes[4]};color:${theme.colors.neutral.ink.light};`;\nexport const Error = styled.span.withConfig({ displayName: \"vui--Error\", componentId: \"vui--1fu4njf\" }) `display:block;font-family:${theme.text.error.fontFamily};font-size:${theme.text.error.fontSize};font-weight:${theme.text.error.fontWeight};line-height:${theme.text.error.lineHeight};color:${theme.text.error.color};&::before{content:'';position:absolute;top:0;bottom:0;left:calc(${theme.sizes[2]} * -1);width:2px;background-color:${theme.colors.secondary.red.base};}`;\nexport const RootStack = styled(Stack).withConfig({ displayName: \"vui--RootStack\", componentId: \"vui--1r762o2\" }) `position:relative;`;\nexport const BlockTooltip = styled(Tooltip).withConfig({ displayName: \"vui--BlockTooltip\", componentId: \"vui--1wskrbx\" }) `display:block;&-hoverable{display:block;}`;\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React, { useMemo } from 'react';\nimport { theme } from '../../theme';\nimport { Stack } from '../../components/Stack';\nimport { RootStack, Label, Hint, Error, BlockTooltip } from './styled';\nimport { HelpIcon } from '../../tempIcons/HelpIcon';\nimport { generateId } from '../../utils/generateId';\nexport const withLabels = (Component) => (_a) => {\n var { label, hint, error, tooltip } = _a, otherProps = __rest(_a, [\"label\", \"hint\", \"error\", \"tooltip\"]);\n const componentId = useMemo(() => generateId(Component.name), []);\n if (!label) {\n return React.createElement(Component, Object.assign({ hasError: !!error }, otherProps));\n }\n return (React.createElement(RootStack, { spacing: \"sm\", alignX: \"stretch\" },\n React.createElement(\"div\", null,\n React.createElement(Stack, { direction: \"horizontal\", alignY: \"center\", spacing: \"sm\" },\n React.createElement(Label, { htmlFor: componentId }, label),\n tooltip && (React.createElement(BlockTooltip, { text: tooltip },\n React.createElement(HelpIcon, { width: theme.sizes.base, height: theme.sizes.base, color: theme.colors.neutral.ink.light })))),\n hint && React.createElement(Hint, null, hint)),\n React.createElement(Component, Object.assign({ id: componentId, hasError: !!error }, otherProps)),\n error && React.createElement(Error, null, error)));\n};\n//# sourceMappingURL=withLabels.js.map","import styled, { css } from 'styled-components';\nimport { theme } from '../../theme';\nconst pseudoStates = ({ hasError, inputSize }) => css `&{--outline-size:${inputSize === 'sm' ? '2px' : '4px'};}&:focus{border-color:#0079d1;box-shadow:0 0 0 var(--outline-size)#80bce8;outline:0;}&:invalid{border-color:#eb5757;box-shadow:0 0 0 var(--outline-size)#f7bcbc;}&:disabled{box-shadow:none;background-color:#f2f3f5;border-color:#959fa8;color:#637381;}${hasError &&\n `\n &,\n &:focus {\n border-color: #EB5757;\n }\n\n &:focus {\n box-shadow: 0 0 0 var(--outline-size) #F7BCBC;\n }\n `}`;\nexport const Input = styled.input.withConfig({ displayName: \"vui--Input\", componentId: \"vui--1o6oill\" }) `font-family:${theme.fontFamily};box-sizing:border-box;display:flex;align-items:center;justify-content:center;padding:0 12px;border-radius:4px;border:1px solid #959fa8;color:#1b2126;${({ inputSize }) => {\n let height = '40px';\n let fontSize = '14px';\n if (inputSize === 'sm') {\n height = '32px';\n fontSize = '12px';\n }\n return `\n height: ${height};\n font-size: ${fontSize};\n `;\n}} ${pseudoStates} &::-webkit-outer-spin-button,&::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}&[type='number']{-moz-appearance:textfield;width:8ch;text-align:right;}`;\nexport const Textarea = styled.textarea.withConfig({ displayName: \"vui--Textarea\", componentId: \"vui--1jp908v\" }) `box-sizing:border-box;width:100%;padding:8px;border-radius:4px;border:1px solid #959fa8;color:#1b2126;${pseudoStates}`;\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React, { useCallback, forwardRef } from 'react';\nimport { generateId } from '../../utils/generateId';\nimport { Input, Textarea } from './styled';\nimport { ComponentSize } from '../types';\nconst NUMBER_REGEX = /^-?[0-9]*\\.?[0-9]+$/;\nexport const TextField = forwardRef((_a, ref) => {\n var { id, className, disabled = false, hasError, max, min, multiline = false, name, onChange, pattern, placeholder, rows = '3', size = ComponentSize.base, step, type = 'text', value, spellCheck = false } = _a, otherProps = __rest(_a, [\"id\", \"className\", \"disabled\", \"hasError\", \"max\", \"min\", \"multiline\", \"name\", \"onChange\", \"pattern\", \"placeholder\", \"rows\", \"size\", \"step\", \"type\", \"value\", \"spellCheck\"]);\n const handleChange = useCallback((event) => {\n if (!onChange)\n return;\n const newValue = event.currentTarget.value;\n if (newValue === '') {\n onChange(newValue);\n return;\n }\n if (type !== 'number') {\n onChange(newValue);\n return;\n }\n const reg = new RegExp(NUMBER_REGEX);\n if (!reg.test(newValue)) {\n return;\n }\n onChange(newValue);\n }, [onChange, type]);\n const componentId = id !== null && id !== void 0 ? id : generateId('textfield');\n if (type === 'text' && multiline) {\n return (React.createElement(Textarea, Object.assign({ className: className, disabled: disabled, hasError: hasError, id: componentId, name: name, onChange: handleChange, placeholder: placeholder, rows: rows, value: value, spellCheck: spellCheck, ref: ref }, otherProps)));\n }\n return (React.createElement(Input, Object.assign({ className: className, disabled: disabled, hasError: hasError, id: componentId, inputSize: size, max: max, min: min, name: name, onChange: handleChange, placeholder: placeholder, step: step, type: type, value: value, spellCheck: spellCheck, ref: ref }, otherProps)));\n});\n//# sourceMappingURL=TextField.js.map","import { withLabels } from '../../hoc';\nimport { TextField as StandardTextField } from './TextField';\nexport const TextField = withLabels(StandardTextField);\nTextField.displayName = 'TextField';\n//# sourceMappingURL=index.js.map","import styled from 'styled-components';\nimport { Text } from '../Text';\nimport { TextField } from '../TextField';\nimport { Button } from '../Button';\nimport { BaseContainer } from '../BaseContainer';\nimport { theme } from '../../theme';\nconst Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--31hvgq\" }) `display:flex;flex-direction:column;position:relative;`;\nconst Row = styled(BaseContainer).withConfig({ displayName: \"vui--Row\", componentId: \"vui--fkaqbt\" }) `display:flex;align-items:center;margin-top:4px;gap:8px;`;\nconst StyledTextField = styled(TextField).withConfig({ displayName: \"vui--StyledTextField\", componentId: \"vui--sglucf\" }) `width:52px;margin:0;padding:0 6px;&&&{text-align:left;border-color:${theme.colors.neutral.ink.lightest};}`;\nconst StyledButton = styled(Button).withConfig({ displayName: \"vui--StyledButton\", componentId: \"vui--m1c7se\" }) `padding:0 6px;border-color:${theme.colors.neutral.ink.lightest};`;\nconst Label = styled(Text).withConfig({ displayName: \"vui--Label\", componentId: \"vui--1cuqy49\" }) ``;\nconst Error = styled.span.withConfig({ displayName: \"vui--Error\", componentId: \"vui--1yz94gf\" }) `display:block;font-family:${theme.text.error.fontFamily};font-size:${theme.text.error.fontSize};font-weight:${theme.text.error.fontWeight};line-height:${theme.text.error.lineHeight};color:${theme.text.error.color};&::before{content:'';position:absolute;top:0;bottom:0;left:calc(${theme.sizes[2]} * -1);width:2px;background-color:${theme.colors.secondary.red.base};}`;\nconst Hint = styled.span.withConfig({ displayName: \"vui--Hint\", componentId: \"vui--d0gr40\" }) `display:block;font-family:${theme.fontFamily};font-size:${theme.sizes[3]};line-height:${theme.sizes[4]};color:${theme.colors.neutral.ink.light};`;\nexport { Container, Row, Error, Hint, StyledTextField as TextField, StyledButton as Button, Label };\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { InputGroup } from '../InputGroup';\nimport { ComponentSize } from '../types';\nimport { withLabels } from '../../hoc';\nimport { Container, Row, TextField, Button } from './styled';\nimport { CrossIcon } from '../../tempIcons/CrossIcon';\nimport { theme } from '../../theme';\nexport const DimensionsInput = withLabels((_a) => {\n var { size = ComponentSize.base, handleChangeHeight, handleChangeWidth, handleChangeLength, className, height, width, length, unit } = _a, rest = __rest(_a, [\"size\", \"handleChangeHeight\", \"handleChangeWidth\", \"handleChangeLength\", \"className\", \"height\", \"width\", \"length\", \"unit\"]);\n return (React.createElement(Container, { className: className },\n React.createElement(Row, null,\n React.createElement(TextField, Object.assign({ onChange: handleChangeLength, size: size, name: \"length\", type: \"number\", placeholder: \"L\", value: length }, rest)),\n React.createElement(CrossIcon, { height: theme.sizes.base, width: theme.sizes.base }),\n React.createElement(TextField, Object.assign({ onChange: handleChangeWidth, size: size, name: \"width\", type: \"number\", placeholder: \"W\", value: width }, rest)),\n React.createElement(CrossIcon, { height: theme.sizes.base, width: theme.sizes.base }),\n React.createElement(InputGroup, null,\n React.createElement(TextField, Object.assign({ onChange: handleChangeHeight, size: size, name: \"height\", type: \"number\", placeholder: \"H\", value: height }, rest)),\n React.createElement(Button, { size: size }, unit)))));\n});\nDimensionsInput.displayName = 'DimensionsInput';\n//# sourceMappingURL=DimensionsInput.js.map","import { useCallback, useEffect, useRef } from 'react';\n/**\n * Close a menu or modal by clicking out of it\n */\nexport const useClickOutside = (isOpen, onClose) => {\n const ref = useRef(null);\n const escapeListener = useCallback((e) => {\n if (e.key === 'Escape') {\n onClose === null || onClose === void 0 ? void 0 : onClose();\n }\n }, [onClose]);\n const clickListener = useCallback((e) => {\n if (!ref.current.contains(e.target)) {\n onClose === null || onClose === void 0 ? void 0 : onClose();\n }\n }, [onClose]);\n useEffect(() => {\n if (isOpen) {\n document.addEventListener('click', clickListener);\n document.addEventListener('keyup', escapeListener);\n return () => {\n document.removeEventListener('click', clickListener);\n document.removeEventListener('keyup', escapeListener);\n };\n }\n return undefined;\n }, [clickListener, escapeListener, isOpen]);\n return ref;\n};\n//# sourceMappingURL=useClickOutside.js.map","import { useState, useCallback } from 'react';\nexport function useDropdown() {\n const [shouldShowDropdown, setShouldShowDropdown] = useState(false);\n const toggleShouldShowDropdown = useCallback(() => setShouldShowDropdown(!shouldShowDropdown), [shouldShowDropdown, setShouldShowDropdown]);\n const closeDropdown = useCallback(() => setShouldShowDropdown(false), [setShouldShowDropdown]);\n return {\n shouldShowDropdown,\n toggleShouldShowDropdown,\n setShouldShowDropdown,\n closeDropdown,\n };\n}\n//# sourceMappingURL=useDropdown.js.map","import React, { useEffect, useState } from 'react';\n// A React hook based on: https://github.com/WICG/focus-visible\nexport const FocusVisibleContext = React.createContext({\n hadKeyboardEvent: true,\n isInitialized: false,\n});\nexport function FocusVisibleManager({ children }) {\n const [hadKeyboardEvent, setHadKeyboardEvent] = useState(true);\n useEffect(() => {\n function onPointerDown() {\n setHadKeyboardEvent(false);\n }\n /**\n * When the polfyill first loads, assume the user is in keyboard modality.\n * If any event is received from a pointing device (e.g. mouse, pointer,\n * touch), turn off keyboard modality.\n * This accounts for situations where focus enters the page from the URL bar.\n * @param {Event} e\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n function onInitialPointerMove(e) {\n // Work around a Safari quirk that fires a mousemove on <html> whenever the\n // window blurs, even if you're tabbing out of the page. ¯\\_(ツ)_/¯\n if (e.target.nodeName && e.target.nodeName.toLowerCase() === 'html') {\n return;\n }\n setHadKeyboardEvent(false);\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n removeInitialPointerMoveListeners();\n }\n /**\n * Add a group of listeners to detect usage of any pointing devices.\n * These listeners will be added when the polyfill first loads, and anytime\n * the window is blurred, so that they are active when the window regains\n * focus.\n */\n function addInitialPointerMoveListeners() {\n document.addEventListener('mousemove', onInitialPointerMove);\n document.addEventListener('mousedown', onInitialPointerMove);\n document.addEventListener('mouseup', onInitialPointerMove);\n document.addEventListener('pointermove', onInitialPointerMove);\n document.addEventListener('pointerdown', onInitialPointerMove);\n document.addEventListener('pointerup', onInitialPointerMove);\n document.addEventListener('touchmove', onInitialPointerMove);\n document.addEventListener('touchstart', onInitialPointerMove);\n document.addEventListener('touchend', onInitialPointerMove);\n }\n function removeInitialPointerMoveListeners() {\n document.removeEventListener('mousemove', onInitialPointerMove);\n document.removeEventListener('mousedown', onInitialPointerMove);\n document.removeEventListener('mouseup', onInitialPointerMove);\n document.removeEventListener('pointermove', onInitialPointerMove);\n document.removeEventListener('pointerdown', onInitialPointerMove);\n document.removeEventListener('pointerup', onInitialPointerMove);\n document.removeEventListener('touchmove', onInitialPointerMove);\n document.removeEventListener('touchstart', onInitialPointerMove);\n document.removeEventListener('touchend', onInitialPointerMove);\n }\n /**\n * If the most recent user interaction was via the keyboard;\n * and the key press did not include a meta, alt/option, or control key;\n * then the modality is keyboard. Otherwise, the modality is not keyboard.\n * Apply `focus-visible` to any current active element and keep track\n * of our keyboard modality state with `hadKeyboardEvent`.\n * @param {KeyboardEvent} e\n */\n function onKeyDown(e) {\n if (e.metaKey || e.altKey || e.ctrlKey) {\n return;\n }\n setHadKeyboardEvent(true);\n }\n /**\n * If the user changes tabs, keep track of whether or not the previously\n * focused element had .focus-visible.\n * @param {Event} e\n */\n function onVisibilityChange() {\n if (document.visibilityState === 'hidden') {\n // If the tab becomes active again, the browser will handle calling focus\n // on the element (Safari actually calls it twice).\n // If this tab change caused a blur on an element with focus-visible,\n // re-apply the class when the user switches back to the tab.\n setHadKeyboardEvent(true);\n addInitialPointerMoveListeners();\n }\n }\n // For some kinds of state, we are interested in changes at the global scope\n // only. For example, global pointer input, global key presses and global\n // visibility change should affect the state at every scope:\n document.addEventListener('keydown', onKeyDown, true);\n document.addEventListener('mousedown', onPointerDown, true);\n document.addEventListener('pointerdown', onPointerDown, true);\n document.addEventListener('touchstart', onPointerDown, true);\n document.addEventListener('visibilitychange', onVisibilityChange, true);\n addInitialPointerMoveListeners();\n return () => {\n document.removeEventListener('keydown', onKeyDown, true);\n document.removeEventListener('mousedown', onPointerDown, true);\n document.removeEventListener('pointerdown', onPointerDown, true);\n document.removeEventListener('touchstart', onPointerDown, true);\n document.removeEventListener('visibilitychange', onVisibilityChange, true);\n removeInitialPointerMoveListeners();\n };\n }, [setHadKeyboardEvent]);\n return (\n // eslint-disable-next-line react/jsx-no-constructed-context-values\n React.createElement(FocusVisibleContext.Provider, { value: { hadKeyboardEvent, isInitialized: true } }, children));\n}\nexport function useFocusVisible() {\n const [isFocused, setIsFocused] = React.useState(false);\n const { hadKeyboardEvent, isInitialized } = React.useContext(FocusVisibleContext);\n const onFocus = React.useCallback(() => {\n if (!isFocused)\n setIsFocused(true);\n }, [isFocused]);\n const onBlur = React.useCallback(() => {\n if (isFocused)\n setIsFocused(false);\n }, [isFocused]);\n let focusVisible;\n if (isInitialized) {\n focusVisible = hadKeyboardEvent && isFocused;\n }\n else {\n // Fallback to focused when the `FocusVisibleManager` is not used.\n focusVisible = isFocused;\n }\n return React.useMemo(() => ({\n focusVisible,\n onFocus,\n onBlur,\n }), [focusVisible, onBlur, onFocus]);\n}\n//# sourceMappingURL=useFocusVisible.js.map","import { useState, useCallback } from 'react';\nexport const useHover = (initialState = false) => {\n const [isHovered, setIsHovered] = useState(initialState);\n const handleEnter = useCallback(() => setIsHovered(true), [setIsHovered]);\n const handleLeave = useCallback(() => setIsHovered(false), [setIsHovered]);\n return [isHovered, handleEnter, handleLeave];\n};\n//# sourceMappingURL=useHover.js.map","import { useEffect, useState } from 'react';\n/**\n * A hook to check if a component's contents are overflowing from its boundaries\n * (scrollbar is visible).\n */\nexport const useIsOverflowing = (ref) => {\n const [isOverflowing, setIsOverflowing] = useState(false);\n const [isAtBottom, setIsAtBottom] = useState(false);\n useEffect(() => {\n if (!ref)\n return;\n const resizeObserver = new ResizeObserver(() => {\n const hasOverflow = ref.scrollHeight > ref.clientHeight;\n setIsOverflowing(hasOverflow);\n });\n resizeObserver.observe(ref);\n // eslint-disable-next-line consistent-return\n return () => { resizeObserver.disconnect(); };\n }, [ref]);\n const onScroll = (event) => {\n if (!ref)\n return;\n const { scrollTop, scrollHeight, clientHeight } = event.target;\n setIsAtBottom(scrollHeight - scrollTop - clientHeight <= 0);\n };\n return { isOverflowing: isOverflowing && !isAtBottom, onScroll };\n};\n//# sourceMappingURL=useIsOverflowing.js.map","import styled from 'styled-components';\nimport { colors } from '../../theme/modules/colors';\nimport { BaseContainer } from '../BaseContainer';\nimport { Text } from '../Text';\nimport { AnimatedDropdown } from '../AnimatedDropdown';\nimport { CrossIcon } from '../../tempIcons/CrossIcon';\nimport { DownArrowIcon } from '../../tempIcons/DownArrowIcon';\nimport { sizes } from '../../theme/modules/sizes';\nconst Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--ujckjn\" }) `display:inline-flex;flex-direction:row;align-items:center;background-color:${colors.neutral.grey.base};border-radius:4px;padding:4px 8px;cursor:pointer;svg{width:${sizes.base};height:${sizes.base};}`;\nconst NonSelectableText = styled(Text).withConfig({ displayName: \"vui--NonSelectableText\", componentId: \"vui--oath0b\" }) `user-select:none;`;\nconst GroupLabel = styled(NonSelectableText).withConfig({ displayName: \"vui--GroupLabel\", componentId: \"vui--ln021\" }) `margin-right:4px;`;\nconst MainIcon = styled(DownArrowIcon).withConfig({ displayName: \"vui--MainIcon\", componentId: \"vui--za0kgi\" }) `margin-left:4px;transform:rotate(${(props) => (props.shouldShow ? '180deg' : '0')});width:10px;height:10px;`;\nconst StyledCrossIcon = styled(CrossIcon).withConfig({ displayName: \"vui--StyledCrossIcon\", componentId: \"vui--8epxko\" }) `margin-left:4px;height:10px;width:10px;`;\nconst Content = styled(BaseContainer).withConfig({ displayName: \"vui--Content\", componentId: \"vui--1wgdg8n\" }) `display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;`;\nconst Header = styled(BaseContainer).withConfig({ displayName: \"vui--Header\", componentId: \"vui--188pxr2\" }) `display:flex;flex-direction:row;justify-content:flex-start;align-items:center;padding:12px 18px;border-bottom:1px solid ${colors.neutral.grey.base};svg{color:${({ color }) => color};width:${sizes[5]};height:${sizes[5]};margin-right:10px;}`;\nexport { Container, Text, AnimatedDropdown as Dropdown, GroupLabel, Content, Header, MainIcon, StyledCrossIcon as CrossIcon, };\n//# sourceMappingURL=styled.js.map","import React, { useCallback } from 'react';\nimport { useDropdown } from '../../hooks';\nimport { colors } from '../../theme/modules/colors';\nimport { Container, Text, Dropdown, GroupLabel, MainIcon, CrossIcon, Content, Header, } from './styled';\nimport { buildClassnames } from '../../utils/buildClassnames';\nconst generateClassNames = (prefix) => ({\n filterTagDropdown: prefix ? `${prefix}-filter-tag-dropdown` : undefined,\n container: prefix ? `${prefix}-container` : undefined,\n cross: prefix ? `${prefix}-cross` : undefined,\n});\nexport const FilterTag = ({ className, e2eClassName, label, text, iconSlot, fill = colors.secondary.blue.base, content, footer, onClickAway, onClick, shouldCloseOnClickAway = true, }) => {\n const classNames = generateClassNames(className);\n const e2eClassNames = generateClassNames(e2eClassName);\n const { shouldShowDropdown, toggleShouldShowDropdown, closeDropdown } = useDropdown();\n const handleClick = useCallback((event) => {\n toggleShouldShowDropdown();\n if (onClickAway && shouldShowDropdown)\n onClickAway(event);\n }, [toggleShouldShowDropdown, onClickAway, shouldShowDropdown]);\n const handleClickAway = useCallback((event) => {\n // Escape hatch to apply custom behavior when clicked away\n if (onClickAway)\n onClickAway(event, closeDropdown);\n // Default clickAway behavior (closes the dropdown)\n if (shouldCloseOnClickAway)\n closeDropdown();\n }, [closeDropdown, onClickAway, shouldCloseOnClickAway]);\n const shouldShowSimple = !content;\n return shouldShowSimple ? (React.createElement(Container, { className: buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.container, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.container]), onClick: onClick },\n label && React.createElement(GroupLabel, { variant: \"subheadingSmallBold\" }, `${label}:`),\n React.createElement(Text, null, text),\n React.createElement(CrossIcon, { className: buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.cross, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.cross]), name: \"cross\", size: \"base\", color: colors.neutral.ink.base }))) : (React.createElement(Dropdown, { className: classNames.filterTagDropdown, shouldShowDropdown: shouldShowDropdown, onClickAway: handleClickAway, cta: React.createElement(Container, { className: classNames.container, onClick: handleClick },\n label && React.createElement(GroupLabel, { variant: \"subheadingSmallBold\" }, `${label}:`),\n React.createElement(Text, null, text),\n React.createElement(MainIcon, { color: colors.neutral.ink.base, name: \"downArrow\", shouldShow: shouldShowDropdown })) },\n React.createElement(Content, null,\n React.createElement(Header, { color: fill },\n iconSlot,\n React.createElement(Text, { variant: \"bodyBold\" }, label)),\n content,\n footer)));\n};\n//# sourceMappingURL=FilterTag.js.map","import styled from 'styled-components';\nimport { BaseContainer } from '../BaseContainer';\nimport { sizes } from '../../theme/modules/sizes';\nexport const Grid = styled(BaseContainer).withConfig({ displayName: \"vui--Grid\", componentId: \"vui--kz0fa5\" }) `display:grid;grid-template-columns:repeat(${({ columns }) => columns}, 1fr);grid-gap:${({ spacing = 'base' }) => (spacing ? sizes[spacing] : 0)};`;\n//# sourceMappingURL=index.js.map","import React from 'react';\nexport const PlaceholderImage = (props) => (React.createElement(\"svg\", Object.assign({ width: \"24\", height: \"24\", viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M21.3333 0C22.8 0 24 1.2 24 2.66667V21.3333C24 22.8 22.8 24 21.3333 24H2.66667C1.2 24 0 22.8 0 21.3333V2.66667C0 1.2 1.2 0 2.66667 0H21.3333ZM10.6667 18.0133L7.33333 14L2.66667 20H21.3333L15.3333 12L10.6667 18.0133Z\", fill: \"#CDD1D5\" })));\n//# sourceMappingURL=PlaceholderImage.js.map","import styled from 'styled-components';\nexport const Container = styled.div.withConfig({ displayName: \"vui--Container\", componentId: \"vui--zx358v\" }) ``;\nexport const CommonImage = styled.img.withConfig({ displayName: \"vui--CommonImage\", componentId: \"vui--b3uukr\" }) `box-sizing:border-box;cursor:${({ previewEnabled }) => (previewEnabled ? 'zoom-in' : 'default')};`;\nexport const PreviewImageContainer = styled.div.withConfig({ displayName: \"vui--PreviewImageContainer\", componentId: \"vui--1x57v09\" }) `z-index:10;background-color:transparent;`;\nexport const PreviewImage = styled.img.withConfig({ displayName: \"vui--PreviewImage\", componentId: \"vui--7k8es9\" }) `box-shadow:0 4px 12px rgba(27, 33, 38, 0.2);`;\n//# sourceMappingURL=styled.js.map","export const generateClassNames = (prefix) => ({\n container: prefix ? `${prefix}-image-container` : undefined,\n image: prefix ? `${prefix}-image` : undefined,\n placeholder: prefix ? `${prefix}-image-placeholder` : undefined,\n previewImageContainer: prefix ? `${prefix}-image-preview-container` : undefined,\n});\n//# sourceMappingURL=utils.js.map","import React from 'react';\nimport { CalanderIcon } from '../../../tempIcons/CalendarIcon';\nimport { FailIcon } from '../../../tempIcons/FailIcon';\nconst iconSize = { width: 64, height: 64 };\nexport const defaultEmptyState = {\n icon: React.createElement(CalanderIcon, Object.assign({}, iconSize)),\n title: 'No data found',\n};\nexport const defaultErrorState = {\n icon: React.createElement(FailIcon, Object.assign({}, iconSize)),\n title: 'An error occurred when creating the table',\n subTitle: \"Please, try reloading the page once. If this doesn't solve the problem, contact support\",\n};\nexport var ScrollPosition;\n(function (ScrollPosition) {\n ScrollPosition[\"start\"] = \"start\";\n ScrollPosition[\"middle\"] = \"middle\";\n ScrollPosition[\"end\"] = \"End\";\n ScrollPosition[\"none\"] = \"none\";\n})(ScrollPosition || (ScrollPosition = {}));\n//# sourceMappingURL=constants.js.map","import React from 'react';\nexport const CalanderIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M18.3333 5.7H17.5V4H15.8333V5.7H9.16667V4H7.5V5.7H6.66667C5.74167 5.7 5.00833 6.465 5.00833 7.4L5 19.3C5 20.235 5.74167 21 6.66667 21H18.3333C19.25 21 20 20.235 20 19.3V7.4C20 6.465 19.25 5.7 18.3333 5.7ZM10.0002 11.65H8.3335V13.35H10.0002V11.65ZM13.3332 11.65H11.6665V13.35H13.3332V11.65ZM15 11.65H16.6667V13.35H15V11.65ZM6.6665 19.3H18.3332V9.94998H6.6665V19.3Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=CalendarIcon.js.map","import React from 'react';\nexport const FailIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM12.0001 20.1818C16.5187 20.1818 20.1819 16.5187 20.1819 12C20.1819 7.4813 16.5187 3.81818 12.0001 3.81818C7.48136 3.81818 3.81824 7.4813 3.81824 12C3.81824 16.5187 7.48136 20.1818 12.0001 20.1818ZM16.3536 8.80575L13.1593 12L16.3536 15.1943L15.1943 16.3536L12 13.1593L8.80575 16.3536L7.64648 15.1943L10.8408 12L7.64648 8.80575L8.80575 7.64648L12 10.8408L15.1943 7.64648L16.3536 8.80575ZM8.80571 16L8.80575 16L12 12.8058L12 12.8057L8.80571 16ZM15.1943 16L15.1943 16L16 15.1943L16 15.1943L15.1943 16ZM16 8.80575L12.8058 12L12.8057 12L16 8.80571L16 8.80575Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=FailIcon.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nimport { ScrollPosition } from './utils/constants';\nconst { text, sizes } = theme;\nconst { blue } = theme.colors.secondary;\nconst { grey } = theme.colors.neutral;\nconst { scrollbar } = theme.colors.system;\nconst fixedColumnShadow = `\n position: absolute;\n top: 0;\n bottom: -1px;\n width: 30px;\n content: \"\";\n pointer-events: none;\n box-sizing: border-box;\n transition: box-shadow .3s;\n`;\nconst startFixedColumnShadow = `\n box-shadow: inset 10px 0 10px -8px rgb(0 0 0 / 25%);\n`;\nconst endFixedColumnShadow = `\n box-shadow: inset -10px 0 10px -8px rgb(0 0 0 / 25%);\n`;\nexport const TooltipContent = styled.div.withConfig({ displayName: \"vui--TooltipContent\", componentId: \"vui--6b6999\" }) `display:flex;flex-direction:row;align-items:center;`;\nexport const Wrapper = styled.div.withConfig({ displayName: \"vui--Wrapper\", componentId: \"vui--8prdgq\" }) `width:100%;overflow-x:${(props) => (props.scrollDisabled ? 'hidden' : 'auto')};overflow-y:hidden;position:relative;border-top:1px solid ${grey.dark};border-bottom:1px solid ${grey.dark};${({ showScrollbar }) => showScrollbar\n ? `\n scrollbar-width: auto;\n\n &::-webkit-scrollbar {\n margin-top: 10px;\n width: 6px;\n height: 6px;\n }\n \n &::-webkit-scrollbar-track {\n background: ${scrollbar.background}; \n }\n \n &::-webkit-scrollbar-thumb {\n background: ${scrollbar.thumb};\n border-radius: 4px; \n }\n `\n : ''} ${({ scrollDisabled, lastStartFixedColumnsIndex, firstEndFixedColumnsIndex, scrollPosition }) => scrollDisabled\n ? ''\n : `\n td:nth-child(${lastStartFixedColumnsIndex}):after,\n th:nth-child(${lastStartFixedColumnsIndex}):after {\n right: 0;\n transform: translate(100%);\n ${fixedColumnShadow};\n\n ${scrollPosition === ScrollPosition.middle || scrollPosition === ScrollPosition.end\n ? startFixedColumnShadow\n : ''};\n };\n\n td:nth-last-child(${firstEndFixedColumnsIndex}):after,\n th:nth-last-child(${firstEndFixedColumnsIndex}):after {\n left: 0;\n transform: translate(-100%);\n ${fixedColumnShadow};\n\n ${scrollPosition === ScrollPosition.start || scrollPosition === ScrollPosition.middle\n ? endFixedColumnShadow\n : ''};\n };\n `}`;\nexport const WrapperBordered = styled(Wrapper).withConfig({ displayName: \"vui--WrapperBordered\", componentId: \"vui--1uzcmg4\" }) `border:1px solid ${grey.dark};border-radius:4px;`;\nexport const Head = styled.thead.withConfig({ displayName: \"vui--Head\", componentId: \"vui--tbv1ab\" }) `background-color:white;`;\nexport const Body = styled.tbody.withConfig({ displayName: \"vui--Body\", componentId: \"vui--1f7jdxq\" }) `tr{${({ fixedColumnsStyle }) => fixedColumnsStyle};}& + & > tr:first-child > td{border-top:1px solid ${grey.base};}tr:not(:first-child)> td{border-top:1px solid transparent;}&&& tr:hover td{background-color:#ebf4fb;}`;\nexport const Foot = styled.tfoot.withConfig({ displayName: \"vui--Foot\", componentId: \"vui--1ug6bgl\" }) `& td{background-color:${grey.lightest};padding:1.5rem 1rem;border-top:1px solid ${blue.base};}`;\nexport const Row = styled.tr.withConfig({ displayName: \"vui--Row\", componentId: \"vui--ostkmy\" }) `&.hidden{visibility:collapse;}${({ accentColor }) => accentColor &&\n `\n & > td:first-child::before {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n width: 4px;\n background-color: ${accentColor}; \n }\n `}`;\nexport const Cell = styled.td.withConfig({ displayName: \"vui--Cell\", componentId: \"vui--9fl65z\" }) `position:relative;padding:1.25rem 1rem;text-align:${({ align }) => align || 'left'};background-color:white;font-family:${text.bodySmall.fontFamily};font-size:${text.bodySmall.fontSize};font-weight:${text.bodySmall.fontWeight};color:${text.bodySmall.color};line-height:${sizes.base};width:${({ grow }) => (grow ? '100%' : 'auto')};& > *{vertical-align:middle;}`;\nexport const HeaderCell = styled(Cell).attrs({\n as: 'th',\n}).withConfig({ displayName: \"vui--HeaderCell\", componentId: \"vui--1mc579o\" }) `user-select:none;border-bottom:1px solid ${grey.dark};font-family:${text.bodySmallBold.fontFamily};font-size:${text.bodySmallBold.fontSize};font-weight:${text.bodySmallBold.fontWeight};color:${text.bodySmallBold.color};& span{white-space:pre-line;}&.sortable:hover{cursor:pointer;background-color:${grey.light};}`;\nconst alignmentMap = {\n left: 'flex-start',\n center: 'center',\n right: 'flex-end',\n};\nexport const HeaderCellLayout = styled.div.withConfig({ displayName: \"vui--HeaderCellLayout\", componentId: \"vui--iko9ux\" }) `display:flex;align-items:center;justify-content:${({ align }) => (align ? alignmentMap[align] : 'flex-start')};& > * + *{margin-left:0.25rem;}`;\nexport const Table = styled.table.withConfig({ displayName: \"vui--Table\", componentId: \"vui--1vjqk2m\" }) `width:100%;border-spacing:0;table-layout:${({ isFixedLayout }) => (isFixedLayout ? 'fixed' : 'auto')};${({ striped }) => striped &&\n `\n & ${Body}:nth-child(even) td {\n background-color: ${grey.lightest};\n }\n `} & *{box-sizing:border-box;${({ tableLoading }) => tableLoading &&\n `\n user-select: none;\n pointer-events: none;\n `}}${({ noWrap }) => noWrap &&\n `\n & ${HeaderCell}, & ${HeaderCell} span {\n white-space: nowrap;\n }\n `}`;\nexport const Footer = styled.tfoot.withConfig({ displayName: \"vui--Footer\", componentId: \"vui--ob9m7j\" }) `tr{${({ fixedColumnsStyle }) => fixedColumnsStyle};}& ${Cell}{border-top:1px solid ${grey.dark};background-color:${grey.lightest};padding-top:${sizes.base};padding-bottom:${sizes.base};line-height:2rem;}`;\nexport const StickyHeaderWrapper = styled.div.withConfig({ displayName: \"vui--StickyHeaderWrapper\", componentId: \"vui--5eqa3f\" }) `position:fixed;top:0;z-index:2;overflow-x:hidden;`;\nexport const FakeHeaderTable = styled(Table).withConfig({ displayName: \"vui--FakeHeaderTable\", componentId: \"vui--48b34o\" }) ``;\n//# sourceMappingURL=styled.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nimport { BaseContainer } from '../../BaseContainer';\nimport { Text } from '../../Text';\nconst SpecificStateContainer = styled(BaseContainer).withConfig({ displayName: \"vui--SpecificStateContainer\", componentId: \"vui--120wsfh\" }) `display:flex;flex-direction:column;justify-content:center;align-items:center;height:${(props) => props.height}px;background:white;`;\nconst EllipseContainer = styled(BaseContainer).withConfig({ displayName: \"vui--EllipseContainer\", componentId: \"vui--1khxo3q\" }) `display:flex;justify-content:center;align-items:center;width:120px;height:120px;border-radius:100px;background:${theme.colors.neutral.grey.base};svg{width:64px !important;height:64px !important;}`;\nconst TitleText = styled(Text).withConfig({ displayName: \"vui--TitleText\", componentId: \"vui--3cvjfj\" }) `margin-top:24px;`;\nconst SubTitleText = styled(Text).withConfig({ displayName: \"vui--SubTitleText\", componentId: \"vui--mw0wkw\" }) `margin-top:8px;`;\nexport { SpecificStateContainer, EllipseContainer, TitleText, SubTitleText };\n//# sourceMappingURL=styled.js.map","import React from 'react';\nimport { SpecificStateContainer, EllipseContainer, TitleText, SubTitleText } from './styled';\nexport const SpecificState = ({ height, icon, title, subTitle }) => (React.createElement(SpecificStateContainer, { height: height },\n React.createElement(EllipseContainer, null, icon),\n React.createElement(TitleText, { variant: \"headingLarge\" }, title),\n subTitle && React.createElement(SubTitleText, { variant: \"subheadingMedium\" }, subTitle)));\n//# sourceMappingURL=SpecificState.js.map","/* eslint-disable import/prefer-default-export */\nimport styled from 'styled-components';\nimport { theme } from '../../../theme';\nexport const CellButton = styled.button.withConfig({ displayName: \"vui--CellButton\", componentId: \"vui--14e2rl4\" }) `appearance:none;border:0;background-color:transparent;font:inherit;display:inline-block;box-sizing:border-box;width:calc(100% + 1.5rem);margin:-0.75rem -0.75rem;padding:0.75rem 0.75rem;text-align:inherit;line-height:${theme.sizes.base};border-radius:${theme.radius.base};&:hover{cursor:pointer;background-color:${theme.colors.secondary.blue.lightest};}`;\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport styled from 'styled-components';\nimport { theme } from '../../../theme';\nimport { CellButton } from './styled';\nimport { Cell } from '../styled';\nconst ClickableButton = styled(CellButton).withConfig({ displayName: \"vui--ClickableButton\", componentId: \"vui--1qfw372\" }) `color:${theme.text.link.color};text-decoration:${theme.text.link.textDecoration};`;\nexport const ClickableCell = (_a) => {\n var { onClick, children } = _a, otherProps = __rest(_a, [\"onClick\", \"children\"]);\n return (React.createElement(Cell, Object.assign({}, otherProps),\n React.createElement(ClickableButton, { onClick: onClick }, children)));\n};\n//# sourceMappingURL=ClickableCell.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport styled from 'styled-components';\nimport { CellButton } from './styled';\nimport { Cell } from '../styled';\nconst Content = styled.div.withConfig({ displayName: \"vui--Content\", componentId: \"vui--1fqu167\" }) `text-align:inherit;border-bottom:1px dotted black;`;\nexport const EditableCell = (_a) => {\n var { onClick, children } = _a, otherProps = __rest(_a, [\"onClick\", \"children\"]);\n return (React.createElement(Cell, Object.assign({}, otherProps),\n React.createElement(CellButton, { onClick: onClick },\n React.createElement(Content, null, children))));\n};\n//# sourceMappingURL=EditableCell.js.map","import React from 'react';\nimport styled from 'styled-components';\nimport { theme } from '../../../theme';\nconst { grey } = theme.colors.neutral;\nconst SkeletonContentWrapper = styled.div.withConfig({ displayName: \"vui--SkeletonContentWrapper\", componentId: \"vui--q4n9vc\" }) `height:16px;width:100%;`;\nconst SkeletonContentComponent = styled.div.withConfig({ displayName: \"vui--SkeletonContentComponent\", componentId: \"vui--yfc89o\" }) `display:inline-block;color:transparent;border-radius:4px;animation-duration:${({ isLoading = true }) => (isLoading ? '1s' : 0)};animation-fill-mode:forwards;animation-iteration-count:infinite;animation-name:placeHolderShimmer;animation-timing-function:linear;background:linear-gradient(to right, ${grey.base} 8%, ${grey.dark} 15%, ${grey.base} 33%);background-size:800px 104px;border:0;width:100%;height:100%;@keyframes placeHolderShimmer{0%{background-position:-380px 0;}100%{background-position:380px 0;}}`;\nexport const SkeletonContent = ({ isLoading, style }) => (React.createElement(SkeletonContentWrapper, { style: style },\n React.createElement(SkeletonContentComponent, { isLoading: isLoading })));\n//# sourceMappingURL=SkeletonContent.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { Cell } from '../styled';\nimport { SkeletonContent } from '../SkeletonContent';\nexport const SkeletonCell = (_a) => {\n var { style } = _a, otherProps = __rest(_a, [\"style\"]);\n return (React.createElement(Cell, Object.assign({}, otherProps),\n React.createElement(SkeletonContent, { style: style })));\n};\nSkeletonCell.defaultProps = {\n style: {},\n};\n//# sourceMappingURL=SkeletonCell.js.map","import { useCallback, useEffect, useState } from 'react';\nexport const useStickyHeader = (tableRef, topOffset) => {\n const [isSticky, setIsSticky] = useState(false);\n const handleScrollChange = useCallback(({ top, bottom }) => {\n let sticky = isSticky;\n if (top <= (topOffset || 0) && bottom > 0) {\n sticky = !isSticky ? true : sticky;\n }\n else {\n sticky = isSticky ? false : sticky;\n }\n if (sticky !== isSticky)\n setIsSticky(sticky);\n }, [isSticky, topOffset]);\n useEffect(() => {\n const onScroll = () => {\n var _a;\n if (tableRef.current) {\n handleScrollChange((_a = tableRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect());\n }\n };\n window.addEventListener('scroll', onScroll);\n return () => {\n window.removeEventListener('scroll', onScroll);\n };\n }, [handleScrollChange, tableRef]);\n return { isSticky };\n};\n//# sourceMappingURL=hooks.js.map","import React, { useState } from 'react';\nimport { useScroll } from 'react-use';\nimport { FakeHeaderTable, StickyHeaderWrapper } from './styled';\nimport { useStickyHeader } from './utils/hooks';\nexport const StickyHeader = ({ renderHeader, tableRef, wrapperRef, isFixedLayout, wrapperStyle, }) => {\n var _a;\n const [headerWrapperRef, setHeaderWrapperRef] = useState(null);\n const { isSticky } = useStickyHeader(tableRef, parseInt(typeof (wrapperStyle === null || wrapperStyle === void 0 ? void 0 : wrapperStyle.top) === 'string' ? wrapperStyle === null || wrapperStyle === void 0 ? void 0 : wrapperStyle.top : `${wrapperStyle === null || wrapperStyle === void 0 ? void 0 : wrapperStyle.top}`, 10));\n // here we use 2, because we also have borders on each side by 1 px\n const wrapperWidth = (((_a = wrapperRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect().width) || 0) - 2;\n // we use it just to re-render header to update scroll\n // so we don't need to get any value from this hook\n useScroll(wrapperRef);\n const updateScroll = (ref) => {\n var _a;\n const scrollLeft = ((_a = wrapperRef.current) === null || _a === void 0 ? void 0 : _a.scrollLeft) || 0;\n if (ref) {\n // eslint-disable-next-line no-param-reassign\n ref.scrollLeft = scrollLeft;\n return;\n }\n if (headerWrapperRef)\n headerWrapperRef.scrollLeft = scrollLeft;\n };\n updateScroll();\n return isSticky ? (React.createElement(StickyHeaderWrapper, { ref: (ref) => {\n setHeaderWrapperRef(ref);\n updateScroll(ref);\n }, style: Object.assign({ width: wrapperWidth }, wrapperStyle) },\n React.createElement(FakeHeaderTable, { style: { tableLayout: isFixedLayout ? 'fixed' : 'auto' } }, renderHeader()))) : null;\n};\n//# sourceMappingURL=StickyHeader.js.map","export const convertFixedColumnInlineStyleToStyled = (fixedColumnsStyle) => {\n const styles = [];\n fixedColumnsStyle.forEach(({ index, style }) => styles.push(`\n > td:${style.left !== undefined ? 'nth-child' : 'nth-last-child'}(${Math.abs(index)}) {\n position: sticky;\n ${style.left !== undefined ? 'left' : 'right'}: ${style.left !== undefined ? style.left : style.right}px;\n z-index: ${style.zIndex};\n }\n `));\n return styles.join('\\n\\n');\n};\n//# sourceMappingURL=index.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { HeaderCell } from '../styled';\nimport { SkeletonContent } from '../SkeletonContent';\nexport const SkeletonHeaderCell = (_a) => {\n var { style, width, isLoading } = _a, otherProps = __rest(_a, [\"style\", \"width\", \"isLoading\"]);\n return (React.createElement(HeaderCell, Object.assign({}, otherProps, { style: { width } }),\n React.createElement(SkeletonContent, { style: style, isLoading: isLoading })));\n};\n//# sourceMappingURL=SkeletonHeaderCell.js.map","import React from 'react';\nexport const DoubleArrowAscIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M5 10L8 13L11 10H5Z\", fill: \"#959FA8\" }),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M11 6L8 3L5 6L11 6Z\", fill: \"#0079D1\" })));\n//# sourceMappingURL=DoubleArrowAscIcon.js.map","import React from 'react';\nexport const DoubleArrowDescIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M5 10L8 13L11 10H5Z\", fill: \"#0079D1\" }),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M11 6L8 3L5 6L11 6Z\", fill: \"#959FA8\" })));\n//# sourceMappingURL=DoubleArrowDescIcon.js.map","import React, { useRef, useEffect, useState, useCallback, useMemo } from 'react';\nimport { Checkbox } from '../Checkbox';\nimport { Radio } from '../Radio';\nimport { Tooltip } from '../Tooltip';\nimport { theme } from '../../theme';\nimport { Wrapper, WrapperBordered, Table, Head, Body, Row, Cell, HeaderCell, HeaderCellLayout, Footer, TooltipContent, } from './styled';\nimport { SpecificState } from './SpecificState';\nimport { ClickableCell, EditableCell } from './cells';\nimport { SkeletonCell } from './cells/SkeletonCell';\nimport { defaultEmptyState, defaultErrorState, ScrollPosition } from './utils/constants';\nimport { StickyHeader } from './StickyHeader';\nimport { convertFixedColumnInlineStyleToStyled } from './utils';\nimport { SkeletonHeaderCell } from './cells/SkeletonHeaderCell';\nimport { SkeletonContent } from './SkeletonContent';\nimport { DoubleArrowIcon } from '../../tempIcons/DoubleArrowIconIcon';\nimport { DoubleArrowAscIcon } from '../../tempIcons/DoubleArrowAscIcon';\nimport { DoubleArrowDescIcon } from '../../tempIcons/DoubleArrowDescIcon';\nexport const IconUnsorted = () => (React.createElement(DoubleArrowIcon, { width: theme.sizes.base, height: theme.sizes.base, color: \"lightgrey\" }));\nexport const IconSortAsc = () => (React.createElement(DoubleArrowAscIcon, { width: theme.sizes.base, height: theme.sizes.base, color: \"lightgrey\" }));\nexport const IconSortDesc = () => (React.createElement(DoubleArrowDescIcon, { width: theme.sizes.base, height: theme.sizes.base, color: \"lightgrey\" }));\n/**\n * @deprecated\n *\n * Use DataTable instead\n */\nexport const LegacyDataTable = ({ borderless = false, striped = true, noWrap = false, showScrollbar = false, headers, rows, renderRow, renderNestedRow, expandedRowIds, renderLoadingRow, renderFooterRow, renderFooterLoadingRow, omitFooterSelectionCell = false, selectedRowIds, disabledSelectionInputRowIds, selectionMode = 'multiple', onChangeSelectedRowIds, sortColumnId, sortDirection, onChangeSort, isError = false, isLoading = false, skeletonRowsNumber = 5, isHeaderSticky = true, stickyHeaderStyle, customSpecificState, bodyHeightInSpecificStates = 375, startFixedColumnsNumber, endFixedColumnsNumber, }) => {\n const WrapperComponent = borderless ? Wrapper : WrapperBordered;\n const isEmpty = rows ? rows.length === 0 : false;\n const isFixedLayout = Boolean(startFixedColumnsNumber || endFixedColumnsNumber);\n const isFixedColumnsNotEnabled = !startFixedColumnsNumber && !endFixedColumnsNumber;\n const tableRef = useRef(null);\n const wrapperRef = useRef(null);\n const selectionColumnWidth = 58;\n const [scrollPosition, setScrollPosition] = useState(ScrollPosition.none);\n useEffect(() => {\n var _a;\n let refValue = null;\n const handleScroll = () => {\n if (!wrapperRef.current || isFixedColumnsNotEnabled)\n return;\n const el = wrapperRef.current;\n const scrollWidth = el.scrollWidth + 2; // 2 here is 2px which adds by border\n const { scrollLeft } = el;\n const { width } = el.getBoundingClientRect();\n const scrollValue = scrollLeft + width;\n if (scrollWidth === width)\n setScrollPosition(ScrollPosition.none);\n else if (scrollLeft === 0)\n setScrollPosition(ScrollPosition.start);\n else if (scrollLeft > 0 && scrollValue < scrollWidth)\n setScrollPosition(ScrollPosition.middle);\n else if (scrollValue === scrollWidth)\n setScrollPosition(ScrollPosition.end);\n };\n if (wrapperRef.current) {\n refValue = wrapperRef.current;\n handleScroll();\n (_a = wrapperRef.current) === null || _a === void 0 ? void 0 : _a.addEventListener('scroll', handleScroll);\n }\n return () => {\n refValue === null || refValue === void 0 ? void 0 : refValue.removeEventListener('scroll', handleScroll);\n };\n }, [tableRef, isFixedColumnsNotEnabled]);\n const castWidthToNumber = useCallback((width) => {\n if (typeof width === 'string') {\n // eslint-disable-next-line no-console\n console.error(\"You can only use a numeric value in the 'width' property when you use fixed columns\");\n return null;\n }\n if (width === undefined) {\n // eslint-disable-next-line no-console\n console.error(\"You should provide numeric value in the 'width' attribute in all fixed columns when you use fixed columns\");\n return null;\n }\n return width;\n }, []);\n const generateFixedColumnInlineStyle = useCallback((index, offset, side) => ({\n index: side === 'left' ? index : -index,\n style: {\n position: 'sticky',\n [side]: offset,\n zIndex: 1,\n },\n }), []);\n const generateFixedColumnsStyle = useCallback(() => {\n if (!headers || isLoading)\n return null;\n const startColumns = [];\n const endColumns = [];\n let totalStartOffset = 0;\n let totalEndOffset = 0;\n if (startFixedColumnsNumber) {\n if (selectedRowIds) {\n startColumns.push(generateFixedColumnInlineStyle(1, totalStartOffset, 'left'));\n totalStartOffset += selectionColumnWidth;\n }\n for (let i = 0; i < startFixedColumnsNumber; i += 1) {\n const headerWidth = castWidthToNumber(headers[i].width);\n if (headerWidth) {\n startColumns.push(generateFixedColumnInlineStyle(selectedRowIds ? i + 2 : i + 1, totalStartOffset, 'left'));\n totalStartOffset += headerWidth;\n }\n }\n }\n if (endFixedColumnsNumber) {\n for (let i = 0; i < endFixedColumnsNumber; i += 1) {\n const headerWidth = castWidthToNumber(headers.slice(-i - 1)[0].width);\n if (headerWidth) {\n endColumns.push(generateFixedColumnInlineStyle(i + 1, totalEndOffset, 'right'));\n totalEndOffset += headerWidth;\n }\n }\n }\n if (startColumns.length === 0 && endColumns.length === 0)\n return null;\n return [...startColumns, ...endColumns];\n }, [\n isLoading,\n castWidthToNumber,\n endFixedColumnsNumber,\n generateFixedColumnInlineStyle,\n headers,\n startFixedColumnsNumber,\n selectedRowIds,\n ]);\n const fixedColumnsStyle = useMemo(() => generateFixedColumnsStyle(), [generateFixedColumnsStyle]);\n const handleSelectRow = useCallback((checked, row) => {\n if (!selectedRowIds || !onChangeSelectedRowIds)\n return;\n if (checked) {\n if (selectionMode === 'single') {\n onChangeSelectedRowIds([row.id]);\n return;\n }\n onChangeSelectedRowIds([...selectedRowIds, row.id]);\n return;\n }\n const newSelectedRowIds = [...selectedRowIds];\n const index = newSelectedRowIds.findIndex((id) => id === row.id);\n newSelectedRowIds.splice(index, 1);\n onChangeSelectedRowIds(newSelectedRowIds);\n }, [onChangeSelectedRowIds, selectedRowIds, selectionMode]);\n const handleSelectAll = useCallback(() => {\n if (!selectedRowIds || !onChangeSelectedRowIds)\n return;\n if (selectedRowIds.length === rows.length) {\n onChangeSelectedRowIds([]);\n return;\n }\n const rowIds = rows.map((row) => row.id);\n onChangeSelectedRowIds(rowIds);\n }, [onChangeSelectedRowIds, rows, selectedRowIds]);\n const handleClickSortableHeader = useCallback((columnId) => {\n if (sortColumnId === undefined || onChangeSort === undefined)\n return;\n let nextColumnId = sortColumnId;\n let nextDirection = 'ascending';\n if (sortDirection === 'ascending') {\n nextDirection = 'descending';\n }\n if (columnId !== sortColumnId) {\n nextColumnId = columnId;\n nextDirection = 'ascending';\n }\n onChangeSort(nextColumnId, nextDirection);\n }, [onChangeSort, sortColumnId, sortDirection]);\n const renderHeaderCell = useCallback((header, style) => {\n let className = '';\n let onClick = () => { };\n let sortIcon = React.createElement(IconUnsorted, null);\n const { tooltip, align, icon, title, sortable, id } = header;\n if (sortable) {\n className = 'sortable';\n onClick = () => handleClickSortableHeader(id);\n if (sortColumnId === id) {\n sortIcon = sortDirection === 'ascending' ? React.createElement(IconSortAsc, null) : React.createElement(IconSortDesc, null);\n }\n }\n const headerContents = (React.createElement(HeaderCellLayout, { align: align },\n icon && icon,\n title && React.createElement(\"span\", null, title),\n sortable && sortIcon));\n return (React.createElement(HeaderCell, { key: id, id: `data-table-header-${id}`, className: className, onClick: onClick, align: header.align, grow: header.grow, style: Object.assign({ width: header.width || 'auto' }, style) }, tooltip ? (React.createElement(Tooltip, { text: tooltip },\n React.createElement(TooltipContent, null, headerContents))) : (headerContents)));\n }, [handleClickSortableHeader, sortColumnId, sortDirection]);\n const renderSkeletonHeaderCell = useCallback((header, style) => (React.createElement(SkeletonHeaderCell, { key: header.id, width: header.width || 'auto', style: style, isLoading: isLoading })), [isLoading]);\n const renderHeader = useCallback(() => {\n if (!headers)\n return null;\n const styles = generateFixedColumnsStyle();\n const selectionCellStyle = styles ? styles[0].style : {};\n return (React.createElement(Head, null,\n React.createElement(Row, null,\n selectedRowIds && (React.createElement(HeaderCell, { style: Object.assign({ width: selectionColumnWidth }, selectionCellStyle) }, selectionMode === 'multiple' && (React.createElement(Checkbox, { checked: (rows.length > 0 && (selectedRowIds === null || selectedRowIds === void 0 ? void 0 : selectedRowIds.length) === rows.length) || false, onChange: handleSelectAll, disabled: (disabledSelectionInputRowIds && disabledSelectionInputRowIds.length > 0) ||\n isLoading ||\n isEmpty, ariaLabel: \"Select all\" })))),\n headers.map((header, index) => {\n const startHeaderIndex = selectedRowIds ? index + 2 : index + 1;\n const endHeaderIndex = index - headers.length;\n const headerCellStyle = styles === null || styles === void 0 ? void 0 : styles.find((style) => style.index === startHeaderIndex || style.index === endHeaderIndex);\n return header.skeleton && (isLoading || isError || isEmpty)\n ? renderSkeletonHeaderCell(header, header.skeletonStyle || {})\n : renderHeaderCell(header, (headerCellStyle === null || headerCellStyle === void 0 ? void 0 : headerCellStyle.style) || {});\n }))));\n }, [\n generateFixedColumnsStyle,\n handleSelectAll,\n headers,\n isEmpty,\n isError,\n isLoading,\n renderSkeletonHeaderCell,\n renderHeaderCell,\n rows.length,\n selectedRowIds,\n selectionMode,\n disabledSelectionInputRowIds,\n ]);\n const renderSelectionInput = useCallback((isSelected, row) => {\n const inputProps = {\n checked: isSelected,\n onChange: (checked) => handleSelectRow(checked, row),\n disabled: (disabledSelectionInputRowIds === null || disabledSelectionInputRowIds === void 0 ? void 0 : disabledSelectionInputRowIds.includes(row.id)) || false,\n };\n if (selectionMode === 'single') {\n return React.createElement(Radio, Object.assign({}, inputProps));\n }\n return React.createElement(Checkbox, Object.assign({}, inputProps));\n }, [handleSelectRow, selectionMode, disabledSelectionInputRowIds]);\n const renderSkeletonSelectionInput = useCallback((rowIndex) => {\n const generalStyle = {\n width: 18,\n height: 18,\n margin: 3,\n animationDuration: '0s',\n };\n if (selectionMode === 'single') {\n return (React.createElement(SkeletonCell, { key: rowIndex === undefined ? null : `radio-skeleton-${rowIndex}`, style: Object.assign(Object.assign({}, generalStyle), { borderRadius: '50%' }) }));\n }\n return (React.createElement(SkeletonCell, { key: rowIndex === undefined ? null : `checkbox-skeleton-${rowIndex}`, style: Object.assign(Object.assign({}, generalStyle), { borderRadius: '0.25rem' }) }));\n }, [selectionMode]);\n const getNestedRow = useCallback((nestedRow, isHidden) => {\n var _a, _b;\n if (!renderNestedRow)\n return null;\n const content = renderNestedRow(nestedRow);\n if (!content)\n return null;\n const nestedRowE2eClassName = ((_b = (_a = nestedRow === null || nestedRow === void 0 ? void 0 : nestedRow.data) === null || _a === void 0 ? void 0 : _a.e2eClassNames) === null || _b === void 0 ? void 0 : _b.row) || '';\n return (React.createElement(Row, { key: nestedRow.id, className: `${nestedRowE2eClassName} ${isHidden ? 'hidden' : ''}` },\n selectedRowIds && React.createElement(Cell, null),\n content));\n }, [renderNestedRow, selectedRowIds]);\n const renderDefaultLoadingRow = useCallback((rowIndex) => {\n if (!headers)\n return React.createElement(SkeletonCell, null);\n // Otherwise render a cell for each column\n const cells = headers.map((header) => React.createElement(SkeletonCell, { key: `${rowIndex}-${header.id}` }));\n if (selectedRowIds)\n cells.unshift(renderSkeletonSelectionInput(rowIndex));\n return cells;\n }, [headers, renderSkeletonSelectionInput, selectedRowIds]);\n const getFooter = () => {\n if (!renderFooterRow)\n return null;\n if (isLoading && !renderFooterLoadingRow)\n return null;\n if (!isLoading && isEmpty)\n return null;\n return (React.createElement(Footer, { fixedColumnsStyle: convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || []) },\n React.createElement(Row, null,\n selectedRowIds && !omitFooterSelectionCell && React.createElement(Cell, null),\n !isLoading && renderFooterRow(rows),\n isLoading && renderFooterLoadingRow && renderFooterLoadingRow())));\n };\n let lastStartFixedColumnsIndex = startFixedColumnsNumber;\n if (selectedRowIds && lastStartFixedColumnsIndex)\n lastStartFixedColumnsIndex += 1;\n const renderedRows = useMemo(() => rows.map((row) => {\n var _a, _b, _c;\n const { data } = row;\n const isSelected = selectedRowIds ? selectedRowIds.includes(row.id) : false;\n const isExpanded = expandedRowIds ? expandedRowIds.includes(row.id) : true;\n const bodyClassName = (_a = data === null || data === void 0 ? void 0 : data.e2eClassNames) === null || _a === void 0 ? void 0 : _a.body;\n const rowE2eClassName = (_c = (_b = data === null || data === void 0 ? void 0 : data.e2eClassNames) === null || _b === void 0 ? void 0 : _b.row) !== null && _c !== void 0 ? _c : '';\n const rowClassName = isSelected ? `selected ${rowE2eClassName}` : `${rowE2eClassName}`;\n return (React.createElement(Body, { key: row.id, className: bodyClassName, fixedColumnsStyle: convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || []) },\n React.createElement(Row, { key: row.id, className: rowClassName, accentColor: row.accentColor },\n selectedRowIds && React.createElement(Cell, null, renderSelectionInput(isSelected, row)),\n renderRow(row)),\n row.nestedRows && row.nestedRows.map((item) => getNestedRow(item, !isExpanded))));\n }), [\n rows,\n expandedRowIds,\n fixedColumnsStyle,\n getNestedRow,\n renderRow,\n renderSelectionInput,\n selectedRowIds,\n ]);\n /* Loading state */\n if (isLoading) {\n const loadingRows = [];\n for (let i = 0; i < skeletonRowsNumber; i += 1) {\n loadingRows.push(React.createElement(Body, { key: `loading-row-${i}`, fixedColumnsStyle: convertFixedColumnInlineStyleToStyled(fixedColumnsStyle || []) },\n React.createElement(Row, null, renderLoadingRow ? (React.createElement(React.Fragment, null,\n selectedRowIds && renderSkeletonSelectionInput(),\n renderLoadingRow())) : (renderDefaultLoadingRow(i)))));\n }\n return (React.createElement(WrapperComponent, { ref: wrapperRef, scrollDisabled: true, scrollPosition: scrollPosition, lastStartFixedColumnsIndex: lastStartFixedColumnsIndex, firstEndFixedColumnsIndex: endFixedColumnsNumber },\n isHeaderSticky && headers && (React.createElement(StickyHeader, { renderHeader: renderHeader, tableRef: tableRef, wrapperRef: wrapperRef, isFixedLayout: isFixedLayout, wrapperStyle: stickyHeaderStyle })),\n React.createElement(Table, { ref: tableRef, striped: striped, noWrap: noWrap, tableLoading: true, isFixedLayout: isFixedLayout },\n renderHeader(),\n loadingRows,\n getFooter())));\n }\n /* Empty & Error states */\n if (isEmpty || isError) {\n let specificStateValues = defaultEmptyState;\n if (customSpecificState)\n specificStateValues = customSpecificState;\n else if (isError)\n specificStateValues = defaultErrorState;\n return (React.createElement(WrapperComponent, { scrollDisabled: true },\n React.createElement(Table, { ref: tableRef, striped: striped, noWrap: noWrap, tableLoading: false, isFixedLayout: isFixedLayout },\n renderHeader(),\n getFooter()),\n React.createElement(SpecificState, Object.assign({ height: bodyHeightInSpecificStates }, specificStateValues))));\n }\n /* Populated state */\n return (React.createElement(WrapperComponent, { scrollDisabled: false, ref: wrapperRef, scrollPosition: scrollPosition, lastStartFixedColumnsIndex: lastStartFixedColumnsIndex, firstEndFixedColumnsIndex: endFixedColumnsNumber, showScrollbar: showScrollbar },\n isHeaderSticky && headers && (React.createElement(StickyHeader, { renderHeader: renderHeader, tableRef: tableRef, wrapperRef: wrapperRef, isFixedLayout: isFixedLayout, wrapperStyle: stickyHeaderStyle })),\n React.createElement(Table, { ref: tableRef, striped: striped, noWrap: noWrap, tableLoading: false, isFixedLayout: isFixedLayout },\n renderHeader(),\n renderedRows,\n getFooter())));\n};\nLegacyDataTable.Cell = Cell;\nLegacyDataTable.ClickableCell = ClickableCell;\nLegacyDataTable.EditableCell = EditableCell;\nLegacyDataTable.SkeletonCell = SkeletonCell;\nLegacyDataTable.SkeletonContent = SkeletonContent;\n//# sourceMappingURL=LegacyDataTable.js.map","import styled from 'styled-components';\nexport const LoginButton = styled.button.withConfig({ displayName: \"vui--LoginButton\", componentId: \"vui--wl2n5a\" }) `background:none;border:none;padding:0;cursor:pointer;img{width:156px;height:32px;}`;\n//# sourceMappingURL=styled.js.map","import React, { useState } from 'react';\nimport { LoginButton } from './styled';\nconst buttonImg = 'https://images-na.ssl-images-amazon.com/images/G/01/lwa/btnLWA_gold_312x64.png';\nconst buttonPressedImg = 'https://images-na.ssl-images-amazon.com/images/G/01/lwa/btnLWA_gold_312x64_pressed.png';\nexport const buttonDescription = 'Log in with Amazon';\n/**\n * Image used in this button is to comply with official\n * Amazon button guidelines (https://developer.amazon.com/docs/login-with-amazon/button.html#android-images).\n */\nexport const LoginWithAmazonButton = (props) => {\n const [image, setImage] = useState(buttonImg);\n const handleMouseDown = () => {\n setImage(buttonPressedImg);\n };\n const handleMouseUp = () => {\n setImage(buttonImg);\n };\n return (React.createElement(LoginButton, Object.assign({ onMouseDown: handleMouseDown, onMouseUp: handleMouseUp, \"aria-label\": buttonDescription }, props),\n React.createElement(\"img\", { src: image, alt: buttonDescription })));\n};\n//# sourceMappingURL=LoginWithAmazonButton.js.map","import styled, { createGlobalStyle } from 'styled-components';\nimport { Card } from '../../Card';\nimport { theme } from '../../../theme';\nexport const NonScrollableBody = createGlobalStyle `body{overflow:hidden;scrollbar-gutter:stable;}`;\nexport const MainSection = styled.section.withConfig({ displayName: \"vui--MainSection\", componentId: \"vui--or7d\" }) `flex:1;overflow-y:auto;${({ fullBleed }) => !fullBleed && `padding: 0 ${theme.sizes.md};`} ${({ isScrollable }) => isScrollable &&\n `\n & + ${Card.Footer} {\n box-shadow: 0px 10px 15px 0px ${theme.colors.neutral.ink.dark};\n }\n `}`;\n//# sourceMappingURL=styled.js.map","/**\n * Type guard to check if a header slot has been passed to the component.\n */\nexport const hasHeaderSlot = (props) => {\n return !!props.headerSlot;\n};\n/**\n * Type guard to check if a footer slot has been passed to the component.\n */\nexport const hasFooterSlot = (props) => {\n return !!props.footerSlot;\n};\n//# sourceMappingURL=types.js.map","import { breakpoints } from '../../../../theme/modules/breakpoints';\nexport const heightMap = {\n xs: '84vh',\n sm: '72vh',\n base: '84vh',\n lg: '96vh',\n};\nexport const widthMap = {\n [breakpoints.mobile]: {\n xs: '60vw',\n sm: '72vw',\n base: '100vw',\n lg: '100vw',\n },\n [breakpoints.tablet]: {\n xs: '60vw',\n sm: '72vw',\n base: '100vw',\n lg: '100vw',\n },\n [breakpoints.lgTablet]: {\n xs: '48vw',\n sm: '56vw',\n base: '88vw',\n lg: '100vw',\n },\n [breakpoints.desktop]: {\n xs: '36vw',\n sm: '44vw',\n base: '72vw',\n lg: '88vw',\n },\n [breakpoints.lgDesktop]: {\n xs: '32vw',\n sm: '40vw',\n base: '52vw',\n lg: '80vw',\n },\n};\nexport const fullScreenBreakpointMap = {\n xs: breakpoints.mobile,\n sm: breakpoints.mobile,\n base: breakpoints.tablet,\n lg: breakpoints.lgTablet,\n};\n//# sourceMappingURL=constants.js.map","import styled from 'styled-components';\nimport { motion } from 'framer-motion';\nimport { getOpaqueHexColor } from '../../../../utils/color';\nimport { Card } from '../../../Card';\nimport { theme } from '../../../../theme';\nimport { fullScreenBreakpointMap, heightMap, widthMap } from './constants';\nimport { MainSection } from '../styled';\nconst { breakpoints } = theme;\nexport const StyledDialog = styled(motion.dialog).attrs({\n initial: { opacity: 0, y: -50, bounce: 0 },\n exit: { opacity: 0, y: -50, bounce: 0 },\n animate: { opacity: 1, y: 0, bounce: 0 },\n transition: { type: 'tween', duration: 0.25 },\n}).withConfig({ displayName: \"vui--StyledDialog\", componentId: \"vui--hfuefb\" }) `padding:0;border:none;border-radius:${theme.sizes.sm};box-shadow:${theme.shadows.lg};min-width:464px;&::backdrop{animation:fadeIn 0.25s ease forwards;}& > ${Card.Surface}{display:flex;flex-direction:column;${({ variant }) => `max-height: ${heightMap[variant]};`} ${MainSection}{padding-bottom:${theme.sizes.md};}${Card.Footer}{margin-top:0;}}@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}@media (min-width: calc(${breakpoints.mobile} + 1px))and (max-width: ${breakpoints.tablet}){max-width:${({ variant }) => widthMap[breakpoints.tablet][variant]};}@media (min-width: ${breakpoints.tablet})and (max-width: ${breakpoints.lgTablet}){max-width:${({ variant }) => widthMap[breakpoints.lgTablet][variant]};}@media (min-width: ${breakpoints.lgTablet})and (max-width: ${breakpoints.desktop}){max-width:${({ variant }) => widthMap[breakpoints.desktop][variant]};}@media (min-width: ${breakpoints.desktop}){max-width:${({ variant }) => widthMap[breakpoints.lgDesktop][variant]};}@media (max-width: ${({ variant }) => fullScreenBreakpointMap[variant]}){margin:0;width:100%;max-width:100vw;max-height:100vh;&,& > ${Card.Surface}{border-radius:0;height:100%;width:100%;max-height:unset;}}&::backdrop{background-color:${getOpaqueHexColor(theme.colors.neutral.ink.base, 0.5)};}&:not([open]){display:block;position:fixed;top:0;left:0;right:0;bottom:0;transform:translate(-50%, -50%);}`;\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { StyledDialog } from './styled';\nexport const Dialog = React.forwardRef((_a, ref) => {\n var rest = __rest(_a, []);\n return React.createElement(StyledDialog, Object.assign({ ref: ref }, rest));\n});\n//# sourceMappingURL=Dialog.js.map","import styled from 'styled-components';\nimport { Button } from '../Button';\nimport { theme } from '../../theme';\nconst { sizes, text, shadows } = theme;\nconst { grey } = theme.colors.neutral;\nexport const Header = styled.header.withConfig({ displayName: \"vui--Header\", componentId: \"vui--q2h2v8\" }) `padding:${sizes.base} ${sizes.md};background-color:white;box-shadow:${({ shadow }) => shadow !== 'none' && shadows[shadow]};`;\nexport const Title = styled.h1.withConfig({ displayName: \"vui--Title\", componentId: \"vui--7ymyy4\" }) `font-family:${text.headingXL.fontFamily};font-size:${text.headingXL.fontSize};font-weight:${text.headingXL.fontWeight};margin:unset;line-height:1;`;\nexport const Subtitle = styled.p.withConfig({ displayName: \"vui--Subtitle\", componentId: \"vui--1veavxl\" }) `margin:0.75rem 0 0;font-family:${text.subheadingLarge.fontFamily};font-weight:${text.subheadingLarge.fontWeight};font-size:${text.subheadingLarge.fontSize};line-height:${text.subheadingLarge.lineHeight};`;\nexport const Image = styled.img.withConfig({ displayName: \"vui--Image\", componentId: \"vui--1fntac3\" }) `border-radius:${theme.radius.base};border:${sizes.line} solid ${grey.base};object-fit:cover;`;\nexport const ActionsContainer = styled.div.withConfig({ displayName: \"vui--ActionsContainer\", componentId: \"vui--4ms240\" }) `height:100%;display:grid;grid-template-rows:1fr auto;gap:1rem;`;\nexport const SidebarToggleButton = styled(Button).attrs({ variant: 'unstyled' }).withConfig({ displayName: \"vui--SidebarToggleButton\", componentId: \"vui--1e4sfso\" }) `display:flex;align-items:center;font-family:${theme.text.link.fontFamily};font-size:${theme.text.link.fontSize};font-weight:${theme.text.link.fontWeight};line-height:${theme.text.link.lineHeight};color:${theme.text.link.color};&:hover{text-decoration:${theme.text.link.textDecoration};}& > * + *{margin-left:${theme.sizes.xs};}`;\nexport const ColumnGrid = styled.div.withConfig({ displayName: \"vui--ColumnGrid\", componentId: \"vui--498dtg\" }) `width:100%;display:grid;grid-template-columns:1fr minmax(312px, auto);align-items:flex-start;grid-gap:${sizes.md};transition:all 0.2s ease-in-out;& > *:nth-child(2){opacity:${({ showSidebar = true }) => (showSidebar ? '1.0' : '0')};transition:opacity 0.2s;}`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nexport const LeftArrowIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M10.44 11.06L7.38667 8L10.44 4.94L9.5 4L5.5 8L9.5 12L10.44 11.06Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=LeftArrowIcon.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nimport { Stack } from '../Stack';\nimport { Button } from '../Button';\nimport { TextField } from '../TextField';\nexport const PageLimitContainer = styled(Stack).withConfig({ displayName: \"vui--PageLimitContainer\", componentId: \"vui--1psd9g8\" }) `width:${theme.sizes.lg};height:30px;background-color:${theme.colors.neutral.grey.light};border:1px solid ${theme.colors.neutral.grey.base};border-radius:${theme.sizes.xs};`;\nexport const PaginationButton = styled(Button).withConfig({ displayName: \"vui--PaginationButton\", componentId: \"vui--oolvks\" }) `color:${theme.colors.neutral.ink.base};width:32px;height:32px;svg{width:24px;height:24px;}`;\nexport const PageInput = styled(TextField).withConfig({ displayName: \"vui--PageInput\", componentId: \"vui--jjraff\" }) `&[type='number']{width:5.5ch;}`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nimport { Text } from '../Text';\nimport { PageLimitContainer } from './styled';\nexport const PageCount = ({ count }) => (React.createElement(React.Fragment, null,\n React.createElement(\"div\", null,\n React.createElement(Text, { variant: \"bodySmall\", \"aria-hidden\": true }, \"/\")),\n React.createElement(PageLimitContainer, { alignX: \"center\", alignY: \"center\", \"aria-hidden\": true },\n React.createElement(Text, { variant: \"bodySmall\" }, count))));\n//# sourceMappingURL=components.js.map","import { useEffect, useState } from 'react';\n/**\n * A hook to handle pagination state.\n */\nexport const usePagination = ({ currentPage, totalPagesCount, handleChangePage, }) => {\n const [pageInputValue, setPageInputValue] = useState(`${currentPage}`);\n /**\n * When a new value is passed into the component we update the local state, meaning the input\n * value gets updated.\n */\n useEffect(() => {\n setPageInputValue(`${currentPage}`);\n }, [currentPage]);\n const validatePageValue = (value) => value >= 1 && value <= totalPagesCount;\n const checkAndSetLocalPage = (newPage) => {\n if (validatePageValue(newPage))\n setPageInputValue(`${newPage}`);\n };\n /**\n * A function to handle changes to the input, a string will be passed int. We check for an empty\n * string and directly set that, otherwise we validate the input number is within range.\n * @param newValue The new string input value.\n */\n const handleInputChange = (newValue) => {\n if (!newValue)\n setPageInputValue(newValue);\n const intValue = parseInt(newValue, 10);\n checkAndSetLocalPage(intValue);\n };\n /**\n * A function to increment the current page, using callback from props. Local state will update\n * when a new `currentPage` is passed.\n */\n const handleIncrement = () => {\n if (validatePageValue(currentPage + 1))\n handleChangePage(currentPage + 1);\n };\n /**\n * A function to decrement the current page, using callback from props. Local state will update\n * when a new `currentPage` is passed.\n */\n const handleDecrement = () => {\n if (validatePageValue(currentPage - 1))\n handleChangePage(currentPage - 1);\n };\n /**\n * When the input is unfocussed we want to update parent or local state depending on 3 cases:\n * 1. Local page input is '', reset it to the currentPage\n * 2. Local page input is the same as passed by prop, catch and do nothing.\n * 3. Local state has a new value, convert it, validate it and potentially send to parent via\n * `handlePageChange`\n */\n const handleSubmit = () => {\n if (!pageInputValue)\n setPageInputValue(`${currentPage}`);\n if (pageInputValue === `${currentPage}`)\n return;\n const newValue = parseInt(pageInputValue, 10);\n if (validatePageValue(newValue))\n handleChangePage(newValue);\n };\n /**\n * When the user submits the form, either pressing enter or a screenreader shortcut we prevent\n * default action and try and send update.\n * @param event The event fired from the form when submitting.\n */\n const handleFormSubmit = (event) => {\n event.preventDefault();\n handleSubmit();\n };\n return {\n pageInputValue,\n handleIncrement,\n handleDecrement,\n handleInputChange,\n handleSubmit,\n handleFormSubmit,\n };\n};\n//# sourceMappingURL=usePagination.js.map","import React from 'react';\nexport const StartArrowIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { d: \"M11.6434 11.06L8.59004 8L11.6434 4.94L10.7034 4L6.70337 8L10.7034 12L11.6434 11.06Z\", fill: \"currentColor\" }),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M4.37004 12L4.37004 4L5.70337 4L5.70337 12L4.37004 12Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=StartArrowIcon.js.map","import React from 'react';\nexport const EndArrowIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M4.33661 11.06L7.38994 8L4.33661 4.94L5.27661 4L9.27661 8L5.27661 12L4.33661 11.06Z\", fill: \"currentColor\" }),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M11.67 4L11.67 12L10.3367 12L10.3367 4L11.67 4Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=EndArrowIcon.js.map","export const paginationDefaultRangeList = [\n { label: '10 / page', value: 10 },\n { label: '25 / page', value: 25 },\n { label: '50 / page', value: 50 },\n { label: '100 / page', value: 100 },\n];\n//# sourceMappingURL=paginationList.js.map","import styled from 'styled-components';\nimport { AnimatedDropdown } from '../AnimatedDropdown';\nimport { Text } from '../Text';\nimport { BaseContainer } from '../BaseContainer';\nimport { colors } from '../../theme/modules/colors';\nconst Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--1t222e4\" }) `display:flex;flex-direction:row;justify-content:flex-start;align-items:center;`;\nconst Dropdown = styled(AnimatedDropdown).withConfig({ displayName: \"vui--Dropdown\", componentId: \"vui--6y6o6p\" }) `&-container{width:100%;}`;\nconst Button = styled.button.withConfig({ displayName: \"vui--Button\", componentId: \"vui--6l6anz\" }) `width:100%;height:32px;padding:6px 8px 8px 8px;display:flex;border:1px solid ${colors.neutral.grey.base};box-sizing:border-box;border-radius:4px;justify-content:space-between;background:white;cursor:pointer;svg{padding-left:8px;padding-top:2px;}`;\nexport { Container, Dropdown, Button, Text };\n//# sourceMappingURL=styled.js.map","import styled from 'styled-components';\nimport { colors } from '../../../../theme/modules/colors';\nimport { Text } from '../../../Text';\nimport { BaseContainer } from '../../../BaseContainer';\nconst Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--33jbzi\" }) `display:flex;flex-direction:row;justify-content:flex-start;align-items:center;`;\nconst StyledText = styled(Text).withConfig({ displayName: \"vui--StyledText\", componentId: \"vui--1oky5qu\" }) `width:100%;padding:8px 16px;cursor:pointer;&:hover{color:${colors.secondary.blue.base};background:${colors.neutral.grey.lightest};}`;\nexport { StyledText as Text, Container };\n//# sourceMappingURL=styled.js.map","import React, { useCallback } from 'react';\nimport { Container, Text } from './styled';\nexport const Item = ({ item, handleRangeListChange }) => {\n const onClick = useCallback(() => handleRangeListChange(item), [handleRangeListChange, item]);\n return (React.createElement(Container, { onClick: onClick },\n React.createElement(Text, { variant: \"bodySmall\" }, item.label)));\n};\n//# sourceMappingURL=Item.js.map","import React, { Fragment } from 'react';\nimport { paginationDefaultRangeList } from '../../../utils/paginationList';\nimport { Item } from './Item';\nexport const Items = (props) => {\n const { handleRangeListChange, paginationRange = paginationDefaultRangeList } = props;\n return (React.createElement(React.Fragment, null, paginationRange.map((item) => (React.createElement(Fragment, { key: item.label },\n React.createElement(Item, { item: item, handleRangeListChange: handleRangeListChange }))))));\n};\n//# sourceMappingURL=Items.js.map","import React, { Component } from 'react';\nimport { paginationDefaultRangeList } from '../../utils/paginationList';\nimport { theme } from '../../theme';\nimport { Container, Dropdown, Button, Text } from './styled';\nimport { Items } from './Items';\nimport { DropdownIcon } from '../../tempIcons/DropdownIcon';\nexport class PaginationRange extends Component {\n constructor(props) {\n super(props);\n this.handleRangeListChange = (item) => {\n const { onPaginationRangeChange } = this.props;\n this.setDropdownValue(item);\n onPaginationRangeChange(item);\n };\n this.setDropdownValue = (currentValue) => this.setState({\n shouldShowDropdown: false,\n dropdownValue: currentValue,\n });\n this.toggleShouldShow = () => {\n const { shouldShowDropdown } = this.state;\n this.setState({ shouldShowDropdown: !shouldShowDropdown });\n };\n const { dropdownValue = paginationDefaultRangeList[1] } = this.props;\n this.state = {\n dropdownValue,\n shouldShowDropdown: false,\n };\n }\n render() {\n const { className, paginationRange = paginationDefaultRangeList, reversedDropdown, } = this.props;\n const { shouldShowDropdown, dropdownValue } = this.state;\n return (React.createElement(Container, { className: className },\n React.createElement(Dropdown, { cta: React.createElement(Button, { onClick: this.toggleShouldShow },\n React.createElement(Text, { variant: \"bodySmall\" }, dropdownValue.label),\n React.createElement(DropdownIcon, { color: theme.colors.neutral.ink.base })), shouldShowDropdown: shouldShowDropdown, onClickAway: this.toggleShouldShow, reversed: reversedDropdown },\n React.createElement(Items, { paginationRange: paginationRange, handleRangeListChange: this.handleRangeListChange }))));\n }\n}\n//# sourceMappingURL=PaginationRange.js.map","import styled from 'styled-components';\nexport const Container = styled.div.withConfig({ displayName: \"vui--Container\", componentId: \"vui--1kqph75\" }) `box-sizing:border-box;display:inline-flex;flex-direction:column;height:${({ size }) => (size === 'sm' ? '32px' : '40px')};border-radius:4px;${({ size }) => size === 'sm'\n ? `svg { width: 14px !important; height: 14px !important; };\n\n > button { padding: 0 6px };`\n : ''};& > *:first-child{border-bottom-width:0;}& > *:active,& > *:focus{border-width:1px;}& > *:active + *,& > *:focus + *{border-top-width:0;}& > *:focus,& > *:active{z-index:5;}& > *:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit;}& > *:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit;}`;\nexport const StepButton = styled.button.withConfig({ displayName: \"vui--StepButton\", componentId: \"vui--1myicuk\" }) `appearance:none;flex:1;border:0;display:flex;justify-content:center;align-items:center;padding:0 8px;background-color:white;border:1px solid #959fa8;&:hover{cursor:pointer;background-color:#fafafb;}&:active:not(:disabled){background-color:#fafafb;border-color:#0079d1;box-shadow:0 0 0 4px #80bce8;}&:focus{box-shadow:0 0 0 4px #80bce8;outline:0;}&:disabled{background-color:#f2f3f5;border-color:#959fa8;color:#637381;cursor:not-allowed;}`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nimport { theme } from '../../theme';\nimport { Container, StepButton } from './styled';\nimport { DownArrowIcon } from '../../tempIcons/DownArrowIcon';\nimport { UpArrowIcon } from '../../tempIcons/UpArrowIcon';\nexport const Stepper = ({ onIncrement, onDecrement, disabled = false, size }) => (React.createElement(Container, { size: size },\n React.createElement(StepButton, { type: \"button\", onClick: onIncrement, disabled: disabled },\n React.createElement(UpArrowIcon, { height: theme.sizes.base, width: theme.sizes.base, color: theme.colors.neutral.ink.base })),\n React.createElement(StepButton, { type: \"button\", onClick: onDecrement, disabled: disabled },\n React.createElement(DownArrowIcon, { height: theme.sizes.base, width: theme.sizes.base, color: theme.colors.neutral.ink.base }))));\n//# sourceMappingURL=Stepper.js.map","import styled from 'styled-components';\nimport { TextField } from '../TextField';\nimport { BaseContainer } from '../BaseContainer';\nimport { Text } from '../Text';\nimport { InputGroup } from '../InputGroup';\nimport { theme } from '../../theme';\nexport const StyledTextField = styled(TextField).withConfig({ displayName: \"vui--StyledTextField\", componentId: \"vui--bdxre8\" }) `color:${theme.colors.neutral.ink.dark};width:100%;&:focus{box-shadow:none;border-color:none;border-right-width:0;border-color:${theme.colors.neutral.ink.lightest};}`;\nexport const PrefixContainer = styled(BaseContainer).withConfig({ displayName: \"vui--PrefixContainer\", componentId: \"vui--1pz53n4\" }) `user-select:none;border:1px solid ${theme.colors.neutral.ink.lightest};border-radius:4px;display:flex;align-items:center;justify-content:center;width:${({ size }) => (size === 'sm' ? '30px' : '36px')};background-color:${({ disabled }) => (disabled ? theme.colors.neutral.grey.light : 'white')};flex-shrink:0;${({ size }) => (size === 'sm' ? '> span { font-size: 12px }' : '')};&:active{z-index:0;border-right-width:0;+ input{z-index:0;border-left-width:1px;}}`;\nexport const PrefixText = styled(Text).withConfig({ displayName: \"vui--PrefixText\", componentId: \"vui--1n3xr2g\" }) `font-size:14px;`;\nexport const PriceInputGroup = styled(InputGroup).withConfig({ displayName: \"vui--PriceInputGroup\", componentId: \"vui--1sahwox\" }) `display:inline-flex;border-radius:4px;min-width:125px;width:100%;${({ hasError }) => hasError &&\n `\n box-shadow: 0 0 0 4px ${theme.colors.secondary.red.light};\n\n > * {\n border-top-color: ${theme.colors.secondary.red.base};\n border-bottom-color: ${theme.colors.secondary.red.base};\n }\n\n > *:first-child {\n border-left-color: ${theme.colors.secondary.red.base};\n }\n\n > div:last-child {\n > button:first-child {\n border-top-color: ${theme.colors.secondary.red.base};\n border-right-color: ${theme.colors.secondary.red.base};\n }\n\n > button:last-child {\n border-right-color: ${theme.colors.secondary.red.base};\n border-bottom-color: ${theme.colors.secondary.red.base};\n }\n }\n `} &:focus-within{outline:0;box-shadow:${({ hasError }) => hasError ? '' : `0 0 0 4px ${theme.colors.secondary.blue.light}`};}&:focus-within > *{border-top-color:${({ hasError }) => hasError ? theme.colors.secondary.red.base : theme.colors.secondary.blue.base};border-bottom-color:${({ hasError }) => hasError ? theme.colors.secondary.red.base : theme.colors.secondary.blue.base};}&:focus-within > *:first-child{border-left-color:${({ hasError }) => hasError ? theme.colors.secondary.red.base : theme.colors.secondary.blue.base};}&:focus-within > div:last-child{> button:first-child{border-top-color:${({ hasError }) => hasError ? theme.colors.secondary.red.base : theme.colors.secondary.blue.base};border-right-color:${({ hasError }) => hasError ? theme.colors.secondary.red.base : theme.colors.secondary.blue.base};}> button:last-child{border-right-color:${({ hasError }) => hasError ? theme.colors.secondary.red.base : theme.colors.secondary.blue.base};border-bottom-color:${({ hasError }) => hasError ? theme.colors.secondary.red.base : theme.colors.secondary.blue.base};}}`;\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { ComponentSize } from '../types';\nimport { Stepper } from '../Stepper';\nimport { PriceInputGroup, StyledTextField, PrefixContainer, PrefixText } from './styled';\nimport { withLabels } from '../../hoc';\nconst fractionDigits = 2;\nfunction stringToFixed(price) {\n const floatPrice = parseFloat(price.replace(',', '.'));\n return floatPrice.toFixed(fractionDigits);\n}\nexport const PriceInput = withLabels((_a) => {\n var { className = '', hasError, currency, disabled = false, onChange, onPriceChange, priceValue, step = '0.1', size = ComponentSize.base } = _a, otherProps = __rest(_a, [\"className\", \"hasError\", \"currency\", \"disabled\", \"onChange\", \"onPriceChange\", \"priceValue\", \"step\", \"size\"]);\n const handleChange = (value) => onChange(value.replace(/[a-zA-Z]/g, '').replace(',', '.'));\n const handleBlur = (e) => {\n const target = e.target;\n const { value } = target;\n if (!value) {\n onPriceChange('');\n return;\n }\n const roundedValue = stringToFixed(value);\n onPriceChange(roundedValue);\n };\n const handleIncrement = (callback = onPriceChange) => {\n const currentPrice = parseFloat(priceValue) || 0;\n const currentStep = parseFloat(step);\n callback((currentPrice + currentStep).toFixed(fractionDigits));\n };\n const handleDecrement = (callback = onPriceChange) => {\n const currentPrice = parseFloat(priceValue) || 0;\n const currentStep = parseFloat(step);\n callback((currentPrice - currentStep).toFixed(fractionDigits));\n };\n const handleKeyDown = (e) => {\n const { key } = e;\n const target = e.target;\n const isInForm = target.form;\n if (!isInForm) {\n if (key === 'Enter')\n target.blur();\n }\n if (key === 'ArrowUp')\n handleIncrement(onChange);\n if (key === 'ArrowDown')\n handleDecrement(onChange);\n };\n return (React.createElement(PriceInputGroup, { className: className, hasError: hasError },\n React.createElement(PrefixContainer, { disabled: disabled, size: size },\n React.createElement(PrefixText, { variant: \"hintText\" }, currency)),\n React.createElement(StyledTextField, Object.assign({ placeholder: \"0.00\", type: \"currency\", value: priceValue, step: step, onChange: handleChange, onBlur: handleBlur, onKeyDown: handleKeyDown, disabled: disabled, size: size }, otherProps)),\n React.createElement(Stepper, { onIncrement: () => handleIncrement(), onDecrement: () => handleDecrement(), disabled: disabled, size: size })));\n});\nPriceInput.displayName = 'PriceInput';\n//# sourceMappingURL=PriceInput.js.map","import styled from 'styled-components';\nimport { TextField } from '../TextField';\nimport { BaseContainer } from '../BaseContainer';\nimport { Loader } from '../Loader';\nconst Input = styled(TextField).withConfig({ displayName: \"vui--Input\", componentId: \"vui--1jvzatv\" }) `flex-grow:2;margin-top:0;margin-bottom:0;`;\nconst IconContainer = styled.div.withConfig({ displayName: \"vui--IconContainer\", componentId: \"vui--12eib7v\" }) `position:absolute;`;\nconst Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--g7dno3\" }) `position:relative;display:flex;justify-content:flex-start;align-items:center;border-radius:0.25rem;${({ iconPosition }) => {\n let padding = 'padding-right: 2.5rem;';\n let position = 'right: 0.5rem;';\n if (iconPosition === 'left') {\n padding = 'padding-left: 2.5rem';\n position = 'left: 0.5rem;';\n }\n return `\n & ${Input} {\n ${padding}\n }\n\n & ${IconContainer} {\n ${position}\n }\n `;\n}}`;\nexport { Container, Input, IconContainer, Loader };\n//# sourceMappingURL=styled.js.map","import React from 'react';\nexport const SearchIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M14.3819 13.6918H15.1498L20 18.5517L18.5517 20L13.6918 15.1498V14.3819L13.4294 14.1098C12.3213 15.0623 10.8828 15.6358 9.3179 15.6358C5.82847 15.6358 3 12.8073 3 9.3179C3 5.82847 5.82847 3 9.3179 3C12.8073 3 15.6358 5.82847 15.6358 9.3179C15.6358 10.8828 15.0623 12.3213 14.1098 13.4294L14.3819 13.6918ZM4.94397 9.3179C4.94397 11.7381 6.89766 13.6918 9.3179 13.6918C11.7381 13.6918 13.6918 11.7381 13.6918 9.3179C13.6918 6.89766 11.7381 4.94397 9.3179 4.94397C6.89766 4.94397 4.94397 6.89766 4.94397 9.3179Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=SearchIcon.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nimport { BaseContainer } from '../BaseContainer';\nconst buttonBackgroundColor = theme.colors.neutral.grey.lightest;\nconst buttonBorderColor = theme.colors.neutral.grey.dark;\nconst activeButtonColor = theme.colors.secondary.blue.dark;\nexport const SegmentedControlContainer = styled(BaseContainer).withConfig({ displayName: \"vui--SegmentedControlContainer\", componentId: \"vui--mxpi9o\" }) `display:flex;flex-direction:row;> button{border-radius:0;box-shadow:none;:focus,:active{background-color:${buttonBackgroundColor};border-color:${buttonBorderColor};box-shadow:none;}}> .veeqo-components-active-button{:focus,:active{background-color:${activeButtonColor};border-color:${activeButtonColor};}}> button:not(:first-child){border-left:none;}> .veeqo-components-active-button + button{border-left:1px solid ${theme.colors.neutral.grey.dark};}> button:first-child{border-radius:20px 0px 0px 20px;}> button:last-child{border-radius:0px 20px 20px 0px;}`;\n//# sourceMappingURL=styled.js.map","import styled from 'styled-components';\nexport const SelectInput = styled.select.withConfig({ displayName: \"vui--SelectInput\", componentId: \"vui--1h93380\" }) `box-sizing:border-box;appearance:none;display:flex;align-items:center;justify-content:center;padding:0 2.5rem 0 0.5rem;border-radius:4px;background-color:white;border:1px solid #959fa8;color:#1b2126;background-image:url(\"data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M4 6L8 10L12 6H4Z' fill='currentColor' /%3E%3C/svg%3E\");background-repeat:no-repeat;background-position:right 0.5em top 50%,0 0;${({ sizeVariant }) => {\n let height = '40px';\n let fontSize = '14px';\n if (sizeVariant === 'sm') {\n height = '32px';\n fontSize = '12px';\n }\n return `\n height: ${height};\n font-size: ${fontSize};\n `;\n}} &:focus{border-color:#0079d1;box-shadow:0 0 0 4px #80bce8;outline:0;}&:invalid{border-color:#eb5757;box-shadow:0 0 0 4px #f7bcbc;outline:0;}&:disabled{box-shadow:none;background-color:#f2f3f5;border-color:#959fa8;color:#637381;}`;\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React, { forwardRef, useCallback } from 'react';\nimport { SelectInput } from './styled';\nimport { withLabels } from '../../hoc';\nexport const Select = withLabels(forwardRef((_a, ref) => {\n var { className, options, value, onChange, size, disabled, hasError } = _a, otherProps = __rest(_a, [\"className\", \"options\", \"value\", \"onChange\", \"size\", \"disabled\", \"hasError\"]);\n const handleChange = useCallback((e) => {\n if (!onChange)\n return;\n onChange(e.currentTarget.value);\n }, [onChange]);\n return (React.createElement(SelectInput, Object.assign({ className: className, sizeVariant: size, value: value !== null && value !== void 0 ? value : undefined, onChange: handleChange, disabled: disabled, hasError: hasError, ref: ref }, otherProps), !!options &&\n options.map((option) => (React.createElement(\"option\", { key: option.label, value: option.value, disabled: option.disabled }, option.label)))));\n}));\nSelect.displayName = 'Select';\n//# sourceMappingURL=Select.js.map","import styled from 'styled-components';\nimport { sizes } from '../../theme/modules/sizes';\nimport { text } from '../../theme/modules/text';\nimport { colors } from '../../theme/modules/colors';\nconst { blue } = colors.secondary;\nconst { grey } = colors.neutral;\nexport const TableHeader = styled.thead.withConfig({ displayName: \"vui--TableHeader\", componentId: \"vui--1qepc31\" }) `background-color:white;`;\nexport const TableBody = styled.tbody.withConfig({ displayName: \"vui--TableBody\", componentId: \"vui--g9tnvb\" }) `&&& tr:hover td{background-color:${blue.lightest};}`;\nexport const TableRow = styled.tr.withConfig({ displayName: \"vui--TableRow\", componentId: \"vui--50l9ot\" }) ``;\nexport const TableCell = styled.td.withConfig({ displayName: \"vui--TableCell\", componentId: \"vui--1o4t01c\" }) `position:relative;padding:1.25rem 1rem;text-align:${({ align }) => align || 'left'};background-color:white;font-family:${text.bodySmall.fontFamily};font-size:${text.bodySmall.fontSize};font-weight:${text.bodySmall.fontWeight};color:${text.bodySmall.color};line-height:${sizes.base};& > *{vertical-align:middle;}`;\nexport const TableHeaderCell = styled(TableCell).attrs({\n as: 'th',\n}).withConfig({ displayName: \"vui--TableHeaderCell\", componentId: \"vui--k7q8ax\" }) `border-bottom:1px solid ${grey.dark};font-family:${text.bodySmallBold.fontFamily};font-size:${text.bodySmallBold.fontSize};font-weight:${text.bodySmallBold.fontWeight};color:${text.bodySmallBold.color};`;\nexport const Table = styled.table.withConfig({ displayName: \"vui--Table\", componentId: \"vui--25ejag\" }) `width:100%;border-spacing:0;${({ striped }) => striped &&\n `\n & ${TableBody} tr:nth-child(even) td {\n background-color: ${grey.lightest};\n }\n `}`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nimport { TableBody, TableCell, TableHeader, TableRow, TableHeaderCell, Table } from './styled';\n/**\n * A simple table component which provides flexible, pre-styled table elements.\n */\nexport const SimpleTable = ({ striped = true, className, children }) => (React.createElement(Table, { striped: striped, className: className }, children));\nSimpleTable.Header = TableHeader;\nSimpleTable.Body = TableBody;\nSimpleTable.Row = TableRow;\nSimpleTable.HeaderCell = TableHeaderCell;\nSimpleTable.Cell = TableCell;\n//# sourceMappingURL=SimpleTable.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nconst TRACK_HEIGHT = 4;\nconst BORDER_SIZE = 4;\nconst SLIDER_SIZE = 12;\nconst ADDITIONAL_PADDING = 2;\nconst SliderContainer = styled.div.withConfig({ displayName: \"vui--SliderContainer\", componentId: \"vui--s5qrf0\" }) `min-width:128px;display:inline-block;position:relative;padding:${SLIDER_SIZE / 2 + ADDITIONAL_PADDING}px 0px;`;\nconst SliderTrack = styled.div.withConfig({ displayName: \"vui--SliderTrack\", componentId: \"vui--pvw1wx\" }) `background:${theme.colors.neutral.grey.base};height:${TRACK_HEIGHT}px;border-radius:20px;`;\nconst SliderDiv = styled.div.withConfig({ displayName: \"vui--SliderDiv\", componentId: \"vui--19twtgm\" }) `position:absolute;top:-${(SLIDER_SIZE - TRACK_HEIGHT) / 2 - ADDITIONAL_PADDING * 2}px;left:${(props) => `${props.left}%`};width:${SLIDER_SIZE}px;height:${SLIDER_SIZE}px;background:white;border:${BORDER_SIZE}px solid ${theme.colors.secondary.blue.base};border-radius:50%;touch-action:none;cursor:pointer;margin-left:-${SLIDER_SIZE}px;&:active,&:focus,&:focus-visible,&:focus-within{box-shadow:0 0 0 4px ${theme.colors.secondary.blue.light};}`;\nconst SliderRange = styled(SliderTrack).withConfig({ displayName: \"vui--SliderRange\", componentId: \"vui--1vb0w08\" }) `position:relative;width:${(props) => `${props.width}%`};left:${(props) => `${props.left}%`};background:${theme.colors.secondary.blue.light};bottom:${TRACK_HEIGHT}px;border-radius:0;`;\nexport { SliderContainer, SliderTrack, SliderRange, SliderDiv };\n//# sourceMappingURL=styled.js.map","import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport { SliderContainer, SliderTrack, SliderRange, SliderDiv } from './styled';\nimport { buildClassnames } from '../../utils/buildClassnames';\nconst generateClassNames = (prefix) => ({\n container: prefix ? `${prefix}-slider-container` : undefined,\n sliderRange: prefix ? `${prefix}-slider-range` : undefined,\n slider: prefix ? `${prefix}-slider` : undefined,\n startSlider: prefix ? `${prefix}-start-slider` : undefined,\n endSlider: prefix ? `${prefix}-end-slider` : undefined,\n});\nexport const Slider = ({ id, value, min, max, step = 1, onChange, className, e2eClassName, onSlideStart = () => { }, onSlideEnd = () => { }, }) => {\n const [isDragging, setIsDragging] = useState(false);\n const [draggingSliderIndex, setDraggingSliderIndex] = useState(-1);\n const containerRef = useRef(null);\n const startSliderRef = useRef(null);\n const endSliderRef = useRef(null);\n const classNames = generateClassNames(className);\n const e2eClassNames = generateClassNames(e2eClassName);\n const handleMouseMove = useCallback((e) => {\n var _a;\n if (!isDragging || !containerRef.current)\n return;\n const sliderValue = draggingSliderIndex > -1 ? value[draggingSliderIndex] : value;\n const containerSize = containerRef.current.getBoundingClientRect();\n // slider position relative to the container in percents\n const handleValue = ((e.pageX - containerSize.x) * 100) / containerSize.width;\n // current value by slider position\n let newValue = (max - min) * (handleValue / 100) + min;\n const diff = sliderValue - newValue;\n // use to apply step to new value\n if (diff > 0) {\n newValue = sliderValue + Math.ceil(newValue / step - sliderValue / step) * step;\n }\n if (diff < 0) {\n newValue = sliderValue + Math.floor(newValue / step - sliderValue / step) * step;\n }\n if (sliderValue === newValue)\n return;\n if (newValue > max)\n newValue = max;\n if (newValue < min)\n newValue = min;\n if (Array.isArray(value)) {\n if (draggingSliderIndex === 0 && newValue > value[1])\n [, newValue] = value;\n if (draggingSliderIndex === 1 && newValue < value[0])\n [newValue] = value;\n }\n // used to fix 0.30000000000000004 problem\n const decimalPlaces = step.toString().includes('.')\n ? (_a = step.toString().split('.').pop()) === null || _a === void 0 ? void 0 : _a.length\n : 0;\n newValue = Number(newValue.toFixed(decimalPlaces));\n let resultValue;\n if (Array.isArray(value)) {\n resultValue = draggingSliderIndex === 0 ? [newValue, value[1]] : [value[0], newValue];\n }\n else {\n resultValue = newValue;\n }\n onChange(resultValue);\n if (Array.isArray(resultValue) && resultValue[0] === resultValue[1]) {\n if (draggingSliderIndex === 0)\n setDraggingSliderIndex(1);\n if (draggingSliderIndex === 1)\n setDraggingSliderIndex(0);\n }\n }, [draggingSliderIndex, isDragging, max, min, onChange, step, value]);\n const handleMouseUp = useCallback(() => {\n setIsDragging(false);\n onSlideEnd();\n }, [onSlideEnd]);\n const handleMouseDown = useCallback((e, index) => {\n setIsDragging(true);\n onSlideStart();\n if (typeof index === 'number')\n setDraggingSliderIndex(index);\n e.preventDefault();\n }, [onSlideStart]);\n useEffect(() => {\n const handleStartSliderMouseDown = (e) => handleMouseDown(e, Array.isArray(value) ? 0 : 1);\n const handleEndSliderMouseDown = (e) => handleMouseDown(e, 1);\n const startSliderEl = startSliderRef.current;\n const endSliderEl = endSliderRef.current;\n startSliderEl === null || startSliderEl === void 0 ? void 0 : startSliderEl.addEventListener('mousedown', handleStartSliderMouseDown);\n endSliderEl === null || endSliderEl === void 0 ? void 0 : endSliderEl.addEventListener('mousedown', handleEndSliderMouseDown);\n document.addEventListener('mousemove', handleMouseMove);\n document.addEventListener('mouseup', handleMouseUp);\n return () => {\n startSliderEl === null || startSliderEl === void 0 ? void 0 : startSliderEl.removeEventListener('mousedown', handleStartSliderMouseDown);\n endSliderEl === null || endSliderEl === void 0 ? void 0 : endSliderEl.removeEventListener('mousedown', handleEndSliderMouseDown);\n document.removeEventListener('mousemove', handleMouseMove);\n document.removeEventListener('mouseup', handleMouseUp);\n };\n }, [handleMouseDown, handleMouseMove, handleMouseUp, value]);\n const renderSlider = (left, valueNow, index) => {\n let sliderClassName;\n if (typeof index === 'number') {\n sliderClassName = buildClassnames(index === 0\n ? [classNames === null || classNames === void 0 ? void 0 : classNames.startSlider, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.startSlider]\n : [classNames === null || classNames === void 0 ? void 0 : classNames.endSlider, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.endSlider]);\n }\n else {\n sliderClassName = buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.slider, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.slider]);\n }\n return (React.createElement(SliderDiv, { role: \"slider\", ref: index === 1 ? endSliderRef : startSliderRef, className: sliderClassName, left: left, \"aria-valuemin\": min, \"aria-valuemax\": max, \"aria-valuenow\": valueNow }));\n };\n const renderRangeSlider = (rangeSliderValue) => {\n // handle value used to get slider position relative to container from value\n const handleValueStart = ((rangeSliderValue[0] < min ? 0 : rangeSliderValue[0] - min) * 100) / (max - min);\n const handleValueEnd = ((rangeSliderValue[1] > max ? 100 : rangeSliderValue[1] - min) * 100) / (max - min);\n const rangeWidth = handleValueEnd - handleValueStart;\n return (React.createElement(React.Fragment, null,\n React.createElement(SliderRange, { className: buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.sliderRange, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.sliderRange]), left: handleValueStart, width: rangeWidth }),\n renderSlider(handleValueStart, rangeSliderValue[0], 0),\n renderSlider(handleValueEnd, rangeSliderValue[1], 1)));\n };\n const renderSingleSlider = (sliderValue) => {\n if (Array.isArray(value))\n return renderRangeSlider(value);\n let handleValue;\n if (value > max)\n handleValue = 100;\n else if (value < min)\n handleValue = 0;\n else\n handleValue = ((sliderValue - min) * 100) / (max - min);\n return renderSlider(handleValue, sliderValue);\n };\n let render;\n if (Array.isArray(value))\n render = renderRangeSlider(value);\n else\n render = renderSingleSlider(value);\n return (React.createElement(SliderContainer, { className: buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.container, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.container]), id: id, ref: containerRef },\n React.createElement(SliderTrack, null),\n render));\n};\n//# sourceMappingURL=Slider.js.map","import styled from 'styled-components';\nimport { colors } from '../../theme/modules/colors';\nimport { BaseContainer } from '../BaseContainer';\nexport const Tag = styled(BaseContainer).withConfig({ displayName: \"vui--Tag\", componentId: \"vui--qsag0v\" }) `display:inline-flex;flex-direction:row;justify-content:center;align-items:center;border-radius:4px;padding:4px 8px;${({ backgroundColor, color }) => `\n color: ${color !== null && color !== void 0 ? color : colors.neutral.ink.base};\n background-color: ${backgroundColor !== null && backgroundColor !== void 0 ? backgroundColor : colors.neutral.grey.base};\n `}`;\n//# sourceMappingURL=Tag.js.map","import styled from 'styled-components';\nimport { Stack } from '../../Stack';\nimport { BaseContainer } from '../../BaseContainer';\nimport { Text } from '../../Text';\nimport { theme } from '../../../theme';\nimport { sizes } from '../../../theme/modules/sizes';\nexport const ToastsLayoutContainer = styled(Stack).withConfig({ displayName: \"vui--ToastsLayoutContainer\", componentId: \"vui--qrqt2g\" }) `position:fixed;bottom:24px;width:100%;pointer-events:none;`;\nexport const Toast = styled(Stack).withConfig({ displayName: \"vui--Toast\", componentId: \"vui--f5gjtj\" }) `background-color:${theme.colors.neutral.ink.dark};padding:12px 24px 12px 12px;box-shadow:${theme.shadows.lg};border-radius:${theme.radius.md};pointer-events:auto;z-index:40;min-width:${({ minWidth }) => minWidth};max-width:80vw;&.veeqo-components-toast-enter{transform:translateY(12px);opacity:0;}&.veeqo-components-toast-enter-active{transform:translateY(0);opacity:1;transition:500ms ease;}&.veeqo-components-toast-exit{transform:${({ last }) => (last ? 'translateY(0)' : 'translateX(0)')};opacity:1;}&.veeqo-components-toast-exit-active{transform:${({ last }) => (last ? 'translateY(12px)' : 'translateX(12px)')};opacity:0;transition:500ms ease;}`;\nexport const IconWrap = styled(BaseContainer).withConfig({ displayName: \"vui--IconWrap\", componentId: \"vui--n3gc7q\" }) `display:flex;flex-direction:row;align-items:center;justify-content:center;height:40px;width:40px;border-radius:${theme.radius.md};background-color:${({ color }) => color};color:#fff;svg{width:${sizes.md};height:${sizes.md};}`;\nexport const ContentStack = styled(Stack).withConfig({ displayName: \"vui--ContentStack\", componentId: \"vui--12f8l37\" }) `flex-grow:1;`;\nexport const StyledText = styled(Text).withConfig({ displayName: \"vui--StyledText\", componentId: \"vui--1qgwlso\" }) `color:white;font-size:16px;`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\nimport { colors } from '../../../theme/modules/colors';\nimport { IconWrap, Toast as ToastContainer, StyledText as Text, ContentStack } from './styled';\nimport { buildClassnames } from '../../../utils/buildClassnames';\nimport { Button } from '../../Button';\nimport { SuccessIcon } from '../../../tempIcons/SuccessIcon';\nimport { InfoIcon } from '../../../tempIcons/InfoIcon';\nimport { AttentionIcon } from '../../../tempIcons/AttentionIcon';\nimport { MergeIcon } from '../../../tempIcons/MergeIcon';\nimport { CrossIcon } from '../../../tempIcons/CrossIcon';\nconst toastTypes = {\n info: {\n accentColor: colors.brand.blue.base,\n icon: React.createElement(InfoIcon, null),\n },\n success: {\n accentColor: colors.secondary.green.base,\n icon: React.createElement(SuccessIcon, null),\n },\n error: {\n accentColor: colors.secondary.red.base,\n icon: React.createElement(AttentionIcon, null),\n },\n merge: {\n accentColor: colors.secondary.purple.base,\n icon: React.createElement(MergeIcon, null),\n },\n};\nconst generateClassNames = (prefix) => ({\n container: prefix ? `${prefix}-toast-container` : undefined,\n icon: prefix ? `${prefix}-toast-icon` : undefined,\n closeIcon: prefix ? `${prefix}-toast-close-icon` : undefined,\n});\nexport const Toast = ({ className, e2eClassName, type, iconSlot, text, last, minWidth, cta, onClose, }) => {\n const classNames = generateClassNames(className);\n const e2eClassNames = generateClassNames(e2eClassName);\n return (React.createElement(ToastContainer, { className: buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.container, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.container]), direction: \"horizontal\", alignY: \"center\", minWidth: minWidth, last: last },\n React.createElement(IconWrap, { color: toastTypes[type].accentColor, className: buildClassnames([classNames.icon, e2eClassNames.icon]) }, iconSlot !== null && iconSlot !== void 0 ? iconSlot : toastTypes[type].icon),\n React.createElement(ContentStack, { direction: \"horizontal\", alignY: \"center\", alignX: \"between\" },\n React.createElement(Text, { variant: \"body\" }, text),\n cta),\n React.createElement(Button, { variant: \"flat\", icon: React.createElement(CrossIcon, { color: \"white\" }), onClick: onClose, \"aria-label\": \"Close\" })));\n};\n//# sourceMappingURL=Toast.js.map","import React from 'react';\nexport const AttentionIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M11 15H13V17H11V15ZM11 7H13V13H11V7ZM11.99 2C6.47 2 2 6.48 2 12C2 17.52 6.47 22 11.99 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 11.99 2ZM12 20C7.58 20 4 16.42 4 12C4 7.58 7.58 4 12 4C16.42 4 20 7.58 20 12C20 16.42 16.42 20 12 20Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=AttentionIcon.js.map","import React from 'react';\nexport const MergeIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M10.9887 6.82229H6.84911L12.1714 1.5L17.4937 6.82229H13.3541V14.4036L6.25774 21.5L4.59009 19.8323L10.9887 13.4338V6.82229ZM19.7527 19.8323L18.0851 21.5L14.0519 17.4669L15.7196 15.7992L19.7527 19.8323Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=MergeIcon.js.map","import styled from 'styled-components';\nimport { BaseContainer } from '../BaseContainer';\nimport { theme } from '../../theme';\nconst Slider = styled.span.withConfig({ displayName: \"vui--Slider\", componentId: \"vui--10ka3tn\" }) `content:'';position:absolute;top:0;left:0;right:0;bottom:0;border-radius:18px;background-color:#cdd1d5;-webkit-transition:0.3s;transition:0.3s;&:after{content:'';position:absolute;border-radius:50%;background-color:${({ disabled, switched }) => disabled && switched ? theme.colors.secondary.blue.lightest : 'white'};-webkit-transition:0.3s;transition:0.3s;}`;\nconst Input = styled.input.withConfig({ displayName: \"vui--Input\", componentId: \"vui--1f7rwsl\" }) `&:focus-visible + ${Slider}{box-shadow:0 0 0 4px ${theme.colors.brand.blue.light};}&:checked + ${Slider}{background-color:#0079d1;}&:disabled + ${Slider}{background-color:${theme.colors.neutral.grey.base};}&:checked:disabled + ${Slider}{background-color:${theme.colors.secondary.blue.light};}`;\nconst Switch = styled.label.withConfig({ displayName: \"vui--Switch\", componentId: \"vui--16c93z6\" }) `display:inline-block;position:relative;cursor:${({ disabled }) => (disabled ? 'default' : 'pointer')};height:${({ small }) => (small ? '28px' : '36px')};width:${({ small }) => (small ? '56px' : '72px')};input{position:absolute;opacity:0;}${Slider}:after{height:${({ small }) => (small ? '22px' : '28px')};width:${({ small }) => (small ? '22px' : '28px')};left:${({ small }) => (small ? '3px' : '4px')};bottom:${({ small }) => (small ? '3px' : '4px')};}${Input}:checked + ${Slider}{&:after,svg{-webkit-transform:translateX(${({ small }) => (small ? '28px' : '36px')});-ms-transform:translateX(${({ small }) => (small ? '28px' : '36px')});transform:translateX(${({ small }) => (small ? '28px' : '36px')});}}`;\nconst Wrapper = styled(BaseContainer).withConfig({ displayName: \"vui--Wrapper\", componentId: \"vui--13u3unt\" }) `cursor:${({ disabled }) => (disabled ? 'not-allowed' : 'pointer')};display:inline-block;user-select:none;`;\nexport { Switch, Slider, Input, Wrapper };\n//# sourceMappingURL=styled.js.map","import React, { forwardRef } from 'react';\nimport { Input, Slider, Switch, Wrapper } from './styled';\n/**\n * A toggle switch component, use-cases should wrap with a label or\n */\nexport const Toggle = forwardRef(({ id, className, name, switched, small, onClick = () => { }, disabled, ariaLabel }, ref) => (React.createElement(Wrapper, { className: className, disabled: disabled },\n React.createElement(Switch, { small: small, disabled: disabled, role: \"switch\" },\n React.createElement(Input, { id: id, type: \"checkbox\", name: name, \"aria-label\": ariaLabel, checked: !!switched, onChange: disabled ? undefined : onClick, disabled: disabled, ref: ref }),\n React.createElement(Slider, { switched: switched, disabled: disabled })))));\n//# sourceMappingURL=Toggle.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nexport const StyledButton = styled.button.withConfig({ displayName: \"vui--StyledButton\", componentId: \"vui--xt3hiw\" }) `user-select:none;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-family:${theme.fontFamily};font-weight:400;border:1px solid;box-shadow:0 1px 3px rgba(55, 66, 77, 0.15);${({ size, checked }) => {\n let height = '40px';\n let paddingLeft = '24px';\n let paddingRight = '24px';\n let borderRadius = '8px';\n let fontSize = '16px';\n let outlineWidth = '4px';\n let backgroundColor = 'white';\n let borderColor = '#CDD1D5';\n let color = '#37424D';\n if (size === 'sm') {\n height = '32px';\n paddingLeft = '16px';\n paddingRight = '16px';\n borderRadius = '4px';\n fontSize = '14px';\n outlineWidth = '2px';\n }\n if (checked) {\n backgroundColor = '#0079D1';\n borderColor = '#0079D1';\n color = 'white';\n }\n return `\n --outline-width: ${outlineWidth};\n\n height: ${height};\n padding-left: ${paddingLeft};\n padding-right: ${paddingRight};\n border-radius: ${borderRadius};\n font-size: ${fontSize};\n\n background-color: ${backgroundColor};\n border-color: ${borderColor};\n color: ${color};\n `;\n}} & > * + *{margin-left:8px;}&:hover{cursor:pointer;background-color:${({ checked }) => (checked ? '#005A9C' : '#FAFAFB')};}&:active{background-color:${({ checked }) => (checked ? '#005A9C' : '#FAFAFB')};border-color:${({ checked }) => (checked ? '#005A9C' : '#0079D1')};box-shadow:0 0 0 var(--outline-width)#80bce8;}&:focus{box-shadow:0 0 0 var(--outline-width)#80bce8;outline:0;}&:disabled{cursor:unset;box-shadow:none;background-color:#dfe3e8;border-color:#dfe3e8;color:#637381;}& > span{position:relative;top:-1px;}`;\n//# sourceMappingURL=styled.js.map","import styled from 'styled-components';\nimport { theme } from '../../../theme';\nimport { BaseContainer } from '../../BaseContainer';\nconst commonStyles = `\n position: fixed;\n height: 100%;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n`;\nexport const Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--5gocp5\" }) `${commonStyles} display:${(props) => (props.shouldShow ? 'initial' : 'none')};z-index:${theme.layers.modal};`;\nexport const Shadow = styled(BaseContainer).withConfig({ displayName: \"vui--Shadow\", componentId: \"vui--p8qe4b\" }) `${commonStyles} background-color:rgba(55,66,77,0.5);`;\nexport const Wrap = styled(BaseContainer).withConfig({ displayName: \"vui--Wrap\", componentId: \"vui--1u28do5\" }) `position:relative;height:100%;width:100%;z-index:1;`;\n//# sourceMappingURL=styled.js.map","import React from 'react';\n// @ts-ignore\nimport ScrollLock from 'react-scrolllock-configurable';\nimport { Portal } from '../../Portal';\nimport { Container, Shadow, Wrap } from './styled';\nimport { buildClassnames } from '../../../utils/buildClassnames';\nconst WithPortal = ({ usePortal, children }) => (\n// eslint-disable-next-line react/jsx-no-useless-fragment\nReact.createElement(React.Fragment, null, usePortal ? React.createElement(Portal, null, children) : children));\nexport const Popup = ({ className, children = null, shouldShow = false, usePortal = true, }) => (React.createElement(WithPortal, { usePortal: usePortal },\n React.createElement(Container, { className: buildClassnames([`${className}-container`, className]), shouldShow: shouldShow },\n React.createElement(Shadow, null),\n React.createElement(ScrollLock, { isActive: shouldShow },\n React.createElement(Wrap, { className: buildClassnames([`${className}-wrap`, className]) }, children)))));\n//# sourceMappingURL=Popup.js.map","import styled from 'styled-components';\nimport { Button } from '../Button';\nexport const PopupContent = styled.div.withConfig({ displayName: \"vui--PopupContent\", componentId: \"vui--ohq9qo\" }) `display:flex;justify-content:center;align-items:center;height:100%;`;\nexport const VideoWrapper = styled.div.withConfig({ displayName: \"vui--VideoWrapper\", componentId: \"vui--55zou\" }) `position:relative;iframe{width:57vw;height:calc(57vw * 0.5625);border-radius:8px;}`;\nexport const ButtonSC = styled(Button).withConfig({ displayName: \"vui--ButtonSC\", componentId: \"vui--2rc7ks\" }) `position:absolute;top:0px;right:-45px;`;\n//# sourceMappingURL=styled.js.map","export var ViewTypes;\n(function (ViewTypes) {\n ViewTypes[\"saved\"] = \"saved\";\n ViewTypes[\"fixed\"] = \"fixed\";\n ViewTypes[\"draft\"] = \"draft\";\n})(ViewTypes || (ViewTypes = {}));\n//# sourceMappingURL=types.js.map","import styled from 'styled-components';\nimport { colors } from '../../theme/modules/colors';\nimport { Text } from '../Text';\nimport { BaseContainer } from '../BaseContainer';\nimport { sizes } from '../../theme/modules/sizes';\nconst Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--m1gs4v\" }) `padding:14px 24px;`;\nconst CounterText = styled(Text).withConfig({ displayName: \"vui--CounterText\", componentId: \"vui--1ilv3bg\" }) `line-height:1;`;\nconst Contour = styled(BaseContainer).withConfig({ displayName: \"vui--Contour\", componentId: \"vui--b8oq7f\" }) `position:relative;display:flex;flex-direction:row;align-items:center;height:40px;border-radius:4px;padding:0 12px;border:1px solid transparent;cursor:pointer;${({ colourPalette, customTextColour }) => `\n &:hover {\n border: 1px solid ${colourPalette.base};\n background-color: ${colourPalette.lightest};\n }\n\n ${Text} {\n color: ${customTextColour !== null && customTextColour !== void 0 ? customTextColour : colors.neutral.ink.dark};\n }\n `} ${({ active, colourPalette }) => active &&\n `\n background-color: ${colourPalette.lightest};\n `}`;\nconst CounterContainer = styled(Text).withConfig({ displayName: \"vui--CounterContainer\", componentId: \"vui--1xuhw17\" }) `display:inline-flex;flex-direction:row;justify-content:center;align-items:center;border-radius:4px;padding:2px 4px;min-width:20px;height:20px;margin-left:8px;${({ active, colourPalette }) => active &&\n `\n background-color: ${colourPalette.base};\n\n & > ${CounterText} {\n color: #fff;\n }\n `}`;\nconst IconStyling = {\n style: {\n marginLeft: sizes.xs,\n padding: sizes.xs,\n height: sizes.base,\n width: sizes.base,\n },\n};\nexport const CustomIconWrapper = styled.div.withConfig({ displayName: \"vui--CustomIconWrapper\", componentId: \"vui--122jw7g\" }) `display:flex;align-items:center;margin-right:${sizes.sm};svg{height:${sizes.base};width:${sizes.base};}`;\nexport { Container, Contour, Text, CounterContainer, CounterText, IconStyling };\n//# sourceMappingURL=styled.js.map","import React from 'react';\nexport const EditIcon = (props) => (React.createElement(\"svg\", Object.assign({ viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" }, props),\n React.createElement(\"path\", { fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M3 18.0418V21.9996H6.95778L18.6306 10.3273L14.6728 6.36952L3 18.0418ZM21.6913 7.2661C22.1029 6.85501 22.1029 6.19011 21.6913 5.7785L19.2216 3.30831C18.81 2.89723 18.1451 2.89723 17.7335 3.30831L15.8021 5.23971L19.7599 9.19749L21.6913 7.2661Z\", fill: \"currentColor\" })));\n//# sourceMappingURL=EditIcon.js.map","import React, { useCallback } from 'react';\nimport { useHover } from '../../hooks';\nimport { colors } from '../../theme/modules/colors';\nimport { ViewTypes } from './types';\nimport { Container, Contour, CounterContainer, CounterText, CustomIconWrapper, IconStyling, Text, } from './styled';\nimport { buildClassnames } from '../../utils/buildClassnames';\nimport { CrossIcon } from '../../tempIcons/CrossIcon';\nimport { EditIcon } from '../../tempIcons/EditIcon';\nconst generateClassNames = (prefix) => ({\n delete: prefix ? `${prefix}-delete` : undefined,\n options: prefix ? `${prefix}-options` : undefined,\n edit: prefix ? `${prefix}-edit` : undefined,\n container: prefix ? `${prefix}-container` : undefined,\n active: prefix ? `${prefix}-active` : undefined,\n counter: prefix ? `${prefix}-counter` : undefined,\n});\nexport const View = ({ id, iconSlot, name, type, className, colourPalette = colors.secondary.blue, customTextColour, count, active = false, onClick, onDelete, onEdit, e2eClassName, }) => {\n const classNames = generateClassNames(className);\n const e2eClassNames = generateClassNames(e2eClassName);\n const [isHovered, handleEnter, handleLeave] = useHover();\n const handleClick = useCallback(() => onClick(id), [id, onClick]);\n const handleDelete = useCallback((event) => {\n event.stopPropagation();\n if (onDelete)\n onDelete(id);\n }, [onDelete, id]);\n const handleEdit = useCallback((event) => {\n event.stopPropagation();\n if (onEdit)\n onEdit(id);\n }, [onEdit, id]);\n const isDraft = type === ViewTypes.draft;\n const isSaved = type === ViewTypes.saved;\n const fill = active ? colors.neutral.ink.dark : colors.neutral.ink.base;\n return (React.createElement(Container, { className: `${buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.container, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.container])} ${(active && (e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.active)) || ''}`, onClick: handleClick },\n React.createElement(Contour, { active: active, onMouseEnter: handleEnter, onMouseLeave: handleLeave, colourPalette: colourPalette, customTextColour: customTextColour },\n iconSlot && React.createElement(CustomIconWrapper, null, iconSlot),\n React.createElement(Text, { variant: \"bodyBold\" }, name),\n count && (React.createElement(CounterContainer, { active: active || isHovered, colourPalette: colourPalette, customTextColour: customTextColour },\n React.createElement(CounterText, { className: e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.counter, variant: \"subheadingSmall\" }, count))),\n isDraft && (React.createElement(CrossIcon, Object.assign({}, IconStyling, { color: fill, className: e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.delete, onClick: handleDelete }))),\n isSaved && active && (React.createElement(EditIcon, Object.assign({}, IconStyling, { color: fill, className: e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.edit, onClick: handleEdit }))))));\n};\n//# sourceMappingURL=View.js.map","import styled from 'styled-components';\nimport { theme } from '../../theme';\nimport { Button } from '../Button';\nimport { TextField } from '../TextField';\nimport { BaseContainer } from '../BaseContainer';\nconst Container = styled(BaseContainer).withConfig({ displayName: \"vui--Container\", componentId: \"vui--zood5u\" }) `display:flex;flex-direction:column;position:relative;`;\nconst Row = styled(BaseContainer).withConfig({ displayName: \"vui--Row\", componentId: \"vui--f0y2wt\" }) `display:flex;flex-direction:row;`;\nconst StyledTextField = styled(TextField).withConfig({ displayName: \"vui--StyledTextField\", componentId: \"vui--1l16g0h\" }) `&&&{text-align:left;width:52px;}`;\nconst StyledButton = styled(Button).withConfig({ displayName: \"vui--StyledButton\", componentId: \"vui--wvwega\" }) `padding:0 4px;border-color:${theme.colors.neutral.ink.lightest};margin-right:4px;${(props) => props.hasError &&\n `\n border-color: ${theme.colors.secondary.red.base};\n `};`;\nexport { Container, Row, StyledTextField as TextField, StyledButton as Button };\n//# sourceMappingURL=styled.js.map","import { __rest } from \"tslib\";\nimport React from 'react';\nimport { isWeightImperial, isWeightMetric } from './types';\nimport { ComponentSize } from '../types';\nimport { InputGroup } from '../InputGroup';\nimport { withLabels } from '../../hoc';\nimport { Container, TextField, Row, Button } from './styled';\nexport const WeightInput = withLabels((_a) => {\n var { size = ComponentSize.base, hasError, className } = _a, rest = __rest(_a, [\"size\", \"hasError\", \"className\"]);\n return (React.createElement(Container, { className: className },\n React.createElement(Row, null,\n isWeightMetric(rest) && (React.createElement(InputGroup, null,\n React.createElement(TextField, Object.assign({ size: size, onChange: rest.handleChangeGram, name: \"gram\", type: \"number\", value: rest.gram, hasError: hasError }, rest)),\n React.createElement(Button, { hasError: hasError, size: size }, \"g\"))),\n isWeightImperial(rest) && (React.createElement(React.Fragment, null,\n React.createElement(InputGroup, null,\n React.createElement(TextField, Object.assign({ size: size, onChange: rest.handleChangePound, name: \"ounce\", type: \"number\", value: rest.pound, hasError: hasError }, rest)),\n React.createElement(Button, { hasError: hasError, size: size }, \"lb\")),\n React.createElement(InputGroup, null,\n React.createElement(TextField, Object.assign({ size: size, onChange: rest.handleChangeOunce, name: \"pound\", type: \"number\", value: rest.ounce, hasError: hasError }, rest)),\n React.createElement(Button, { hasError: hasError, size: size }, \"oz\")))))));\n});\nWeightInput.displayName = 'WeightInput';\nWeightInput.defaultProps = {\n weightUnit: 'lb',\n};\n//# sourceMappingURL=WeightInput.js.map","export const isWeightMetric = (props) => {\n return props.weightUnit === 'g';\n};\nexport const isWeightImperial = (props) => {\n return props.weightUnit === 'lb' || props.weightUnit === 'oz';\n};\n//# sourceMappingURL=types.js.map","import React, { useState } from 'react';\nimport { motion } from 'framer-motion';\nimport { Top, Text, Left, Right, Description, AccordionDetails, AccordionContent, AccordionSummary, } from './styled';\nimport { colors } from '../../theme/modules/colors';\nimport { UpArrowIcon } from '../../tempIcons/UpArrowIcon';\nexport const Accordion = ({ className, children, label, iconSlot, glyphColor = colors.neutral.ink.lightest, timeout = 350, description, shouldOpenOnMount, }) => {\n const [shouldOpen, setShouldOpen] = useState(!!shouldOpenOnMount);\n const handleOpen = () => setShouldOpen(!shouldOpen);\n return (React.createElement(AccordionDetails, { open: !!shouldOpenOnMount, className: className },\n React.createElement(AccordionSummary, { onClick: handleOpen },\n React.createElement(Top, null,\n React.createElement(Left, { glyphColor: glyphColor },\n iconSlot,\n React.createElement(Text, { variant: \"body\" }, label)),\n React.createElement(Right, null,\n React.createElement(motion.span, { animate: {\n rotate: shouldOpen ? 180 : 0,\n } },\n React.createElement(UpArrowIcon, { name: shouldOpen ? 'downArrow' : 'upArrow' })))),\n !!description && React.createElement(Description, { variant: \"hintText\" }, description)),\n shouldOpen && (React.createElement(AccordionContent, { initial: { opacity: 0 }, exit: { opacity: 0 }, animate: { opacity: 1 }, transition: { from: 0, type: 'tween', duration: timeout / 1000 } }, children))));\n};\n//# sourceMappingURL=Accordion.js.map","import React from 'react';\nimport { CommonAnchor } from './styled';\nexport const Anchor = ({ children, className, text, href, target }) => (React.createElement(CommonAnchor, { href: href, target: target, className: className }, children || text));\n//# sourceMappingURL=Anchor.js.map","/* eslint-disable react/no-array-index-key */\nimport React from 'react';\nimport { theme } from '../../theme';\nimport { AvatarSC } from './styled';\nexport const Avatar = ({ width = '40px', name = 'Veeqo', bgColor = theme.colors.secondary.blue.base, textColor = '#ffffff', }) => {\n const userInitials = name.toUpperCase().match(/\\b(\\w)/g);\n return (React.createElement(AvatarSC, { width: width, bgColor: bgColor, textColor: textColor, className: \"avatar\" }, userInitials === null || userInitials === void 0 ? void 0 : userInitials.slice(0, 2).map((initial, i) => React.createElement(\"span\", { key: `${initial}-${i}` }, initial))));\n};\n//# sourceMappingURL=Avatar.js.map","import React, { useState } from 'react';\nimport { ColumnGrid, ContentContainer } from './styled';\nexport const DetailPage = ({ renderHeader, children }) => {\n const [shouldShowSidebar, setShouldShowSidebar] = useState(true);\n const toggleSidebar = () => setShouldShowSidebar(!shouldShowSidebar);\n return (React.createElement(\"main\", null,\n renderHeader(toggleSidebar, shouldShowSidebar),\n React.createElement(ContentContainer, null,\n React.createElement(ColumnGrid, { showSidebar: shouldShowSidebar }, children))));\n};\n//# sourceMappingURL=DetailPage.js.map","import React, { useState, useCallback } from 'react';\nimport { usePopper } from 'react-popper';\nimport { createPortal } from 'react-dom';\nimport { PlaceholderImage } from './components/PlaceholderImage';\nimport { Container, CommonImage, PreviewImageContainer, PreviewImage } from './components/styled';\nimport { generateClassNames } from './utils';\nimport { buildClassnames } from '../../utils/buildClassnames';\nexport const Image = ({ src, alt = '', className, e2eClassName, width, height, previewWidth, previewHeight, previewPlacement = 'right', previewEnabled = false, placeholder, placeholderWidth, placeholderHeight, disablePlaceholder = false, }) => {\n const classNames = generateClassNames(className);\n const e2eClassNames = generateClassNames(e2eClassName);\n const [isPreviewOpen, setIsPreviewOpen] = useState(false);\n const [imageState, setImageState] = useState({ isLoaded: false, isError: false });\n const [referenceElement, setReferenceElement] = React.useState(null);\n const [popperElement, setPopperElement] = React.useState(null);\n const { styles, attributes } = usePopper(referenceElement, popperElement, {\n placement: previewPlacement,\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [0, 12],\n },\n },\n ],\n });\n const openImagePreview = useCallback(() => (previewEnabled ? setIsPreviewOpen(true) : {}), [previewEnabled]);\n const closeImagePreview = useCallback(() => (previewEnabled ? setIsPreviewOpen(false) : {}), [previewEnabled]);\n const onLoad = () => setImageState({ isLoaded: true, isError: false });\n const onError = () => setImageState({ isLoaded: true, isError: true });\n const isImageHidden = !imageState.isLoaded || imageState.isError;\n return (React.createElement(Container, { className: buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.container, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.container, className]) },\n React.createElement(CommonImage, { src: src, alt: alt, className: buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.image, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.image]), width: width, height: height, onLoad: onLoad, onError: onError, previewEnabled: previewEnabled, onMouseEnter: openImagePreview, onMouseLeave: closeImagePreview, style: isImageHidden ? { display: 'none' } : {}, ref: setReferenceElement }),\n !disablePlaceholder &&\n isImageHidden &&\n (placeholder || (React.createElement(PlaceholderImage, { className: buildClassnames([classNames === null || classNames === void 0 ? void 0 : classNames.placeholder, e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.placeholder]), width: placeholderWidth || width, height: placeholderHeight || height }))),\n isPreviewOpen &&\n createPortal(React.createElement(PreviewImageContainer, Object.assign({ ref: setPopperElement, style: styles.popper }, attributes.popper, { className: buildClassnames([\n classNames === null || classNames === void 0 ? void 0 : classNames.previewImageContainer,\n e2eClassNames === null || e2eClassNames === void 0 ? void 0 : e2eClassNames.previewImageContainer,\n ]) }),\n React.createElement(PreviewImage, { src: src, alt: \"\", width: previewWidth, height: previewHeight })), document.body)));\n};\n//# sourceMappingURL=Image.js.map","import { __rest } from \"tslib\";\n/* eslint-disable react/destructuring-assignment */\nimport React, { useEffect, useRef, useState } from 'react';\nimport { AnimatePresence } from 'framer-motion';\nimport { MainSection, NonScrollableBody } from './components/styled';\nimport { hasFooterSlot, hasHeaderSlot } from './types';\nimport { Dialog } from './components/Dialog/Dialog';\nimport { useIsOverflowing } from '../../hooks/useIsOverflowing';\nimport { Button } from '../Button';\nimport { Card } from '../Card';\nimport { CardHeader } from '../CardHeader';\nimport { Stack } from '../Stack';\nexport const Modal = (props) => {\n const { shouldShow, showHeaderCloseButton = true, fullBleed = false, variant = 'base', onClose: parentOnClose, children, } = props;\n const modalRef = useRef(null);\n const [mainSectionRef, setMainSectionRef] = useState(null);\n useEffect(() => {\n var _a, _b;\n if (shouldShow) {\n (_a = modalRef.current) === null || _a === void 0 ? void 0 : _a.removeAttribute('open'); // Allows for conditional rendering.\n (_b = modalRef.current) === null || _b === void 0 ? void 0 : _b.showModal();\n }\n }, [shouldShow]);\n const { isOverflowing: isContentOverflowing, onScroll } = useIsOverflowing(mainSectionRef);\n const onClose = () => {\n var _a;\n (_a = modalRef.current) === null || _a === void 0 ? void 0 : _a.close();\n parentOnClose();\n };\n return (React.createElement(AnimatePresence, null, shouldShow && (React.createElement(\"div\", { \"data-testid\": \"dialog-wrapper\" },\n React.createElement(NonScrollableBody, null),\n React.createElement(Dialog, { ref: modalRef, onClose: onClose, variant: variant, \"aria-describedby\": \"modal_title\" },\n React.createElement(Card.Surface, null,\n hasHeaderSlot(props) ? (props.headerSlot) : (React.createElement(CardHeader, Object.assign({ id: \"modal_title\", headerVariant: \"headingLarge\", title: props.headerTitle, subtitle: props.headerSubtitle }, (showHeaderCloseButton && { onClickClose: onClose })))),\n React.createElement(MainSection, { onScroll: onScroll, ref: setMainSectionRef, isScrollable: isContentOverflowing, fullBleed: fullBleed }, children),\n hasFooterSlot(props) && props.footerSlot,\n !hasFooterSlot(props) && (props.leftActions || props.rightActions) && (React.createElement(Card.Footer, null,\n React.createElement(Stack, { direction: \"horizontal\", alignX: props.leftActions ? 'between' : 'end' },\n props.leftActions && (React.createElement(Stack, { direction: \"horizontal\", alignX: \"start\", \"data-testid\": \"left-actions-container\" }, props.leftActions.map((_a) => {\n var { label } = _a, actionProps = __rest(_a, [\"label\"]);\n return (React.createElement(Button, Object.assign({ key: label, type: \"button\" }, actionProps), label));\n }))),\n props.rightActions && (React.createElement(Stack, { direction: \"horizontal\", alignX: \"end\", \"data-testid\": \"right-actions-container\" }, props.rightActions.map((_a) => {\n var { label } = _a, actionProps = __rest(_a, [\"label\"]);\n return (React.createElement(Button, Object.assign({ key: label, type: \"button\" }, actionProps), label));\n }))))))))))));\n};\n//# sourceMappingURL=Modal.js.map","import React from 'react';\nimport { Stack } from '../Stack';\nimport { ActionList } from '../ActionList';\nimport { Button } from '../Button';\nimport { Header, Title, Subtitle, Image, ActionsContainer, SidebarToggleButton, ColumnGrid, } from './styled';\nimport { RightArrowIcon } from '../../tempIcons/RightArrowIcon';\nimport { LeftArrowIcon } from '../../tempIcons/LeftArrowIcon';\nimport { sizes } from '../../theme/modules/sizes';\nexport const PageHeader = ({ title, subtitle, imageSrc, actions, quickActions, backAction, Accessory, shadow = 'none', onClickPrevious, onClickNext, onClickToggleSidebar, }) => {\n const actionsMarkup = actions && (React.createElement(ActionList, { buttonVariant: !quickActions ? 'primary' : 'default', title: \"Actions\", sections: actions }));\n const quickActionsMarkup = quickActions === null || quickActions === void 0 ? void 0 : quickActions.map((action) => (React.createElement(Button, { key: action.title, variant: action.variant, icon: action.icon, onClick: action.onClick }, action.title)));\n const backActionMarkup = backAction && (React.createElement(Button, { onClick: backAction.onClick, icon: React.createElement(LeftArrowIcon, null), variant: \"link\" }, backAction.title));\n const toggleSidebarMarkup = onClickToggleSidebar && (React.createElement(Stack, { direction: \"horizontal\", alignX: \"end\" },\n React.createElement(SidebarToggleButton, { onClick: onClickToggleSidebar },\n React.createElement(\"span\", null, \"Toggle sidebar\"),\n React.createElement(RightArrowIcon, { width: sizes.md }))));\n return (React.createElement(Header, { shadow: shadow },\n React.createElement(Stack, null,\n backActionMarkup,\n React.createElement(ColumnGrid, null,\n React.createElement(Stack, { direction: \"horizontal\", spacing: \"md\" },\n imageSrc && React.createElement(Image, { src: imageSrc, alt: \"\", width: \"72\", height: \"72\" }),\n React.createElement(\"div\", { style: { flex: 1 } },\n React.createElement(Stack, { alignX: \"stretch\" },\n React.createElement(Title, null, title),\n Accessory,\n subtitle && React.createElement(Subtitle, null, subtitle)))),\n React.createElement(ActionsContainer, null,\n React.createElement(Stack, { direction: \"horizontal\", alignX: \"end\", spacing: \"sm\" },\n quickActionsMarkup,\n actionsMarkup,\n onClickPrevious && React.createElement(Button, { icon: React.createElement(LeftArrowIcon, null), onClick: onClickPrevious }),\n onClickNext && React.createElement(Button, { icon: React.createElement(RightArrowIcon, null), onClick: onClickNext })),\n toggleSidebarMarkup)))));\n};\n//# sourceMappingURL=PageHeader.js.map","import React from 'react';\nimport { Stack } from '../Stack';\nimport { PageInput, PaginationButton } from './styled';\nimport { PageCount } from './components';\nimport { usePagination } from './hooks/usePagination';\nimport { RightArrowIcon } from '../../tempIcons/RightArrowIcon';\nimport { StartArrowIcon } from '../../tempIcons/StartArrowIcon';\nimport { LeftArrowIcon } from '../../tempIcons/LeftArrowIcon';\nimport { EndArrowIcon } from '../../tempIcons/EndArrowIcon';\nimport { ComponentSize } from '../types';\nexport const Pagination = ({ testId, e2eClassName, currentPage, totalPagesCount, handleChangePage, }) => {\n const { pageInputValue, handleIncrement, handleDecrement, handleFormSubmit, handleInputChange, handleSubmit, } = usePagination({\n currentPage,\n totalPagesCount,\n handleChangePage,\n });\n /**\n * A function to go back to the first page, provided we aren't already there.\n */\n const handleSkipBack = () => {\n if (currentPage !== 1)\n handleChangePage(1);\n };\n /**\n * A function to go to the last page, provided we aren't already there.\n */\n const handleSkipToEnd = () => {\n if (currentPage !== totalPagesCount)\n handleChangePage(totalPagesCount);\n };\n return (React.createElement(Stack, { direction: \"horizontal\", alignY: \"center\", spacing: \"xs\", \"data-testid\": testId, className: e2eClassName },\n React.createElement(PaginationButton, { onClick: handleSkipBack, icon: React.createElement(StartArrowIcon, null), size: \"sm\", \"aria-label\": \"go to first page\" }),\n React.createElement(PaginationButton, { onClick: handleDecrement, icon: React.createElement(LeftArrowIcon, null), size: \"sm\", \"aria-label\": \"go to previous page\", \"aria-disabled\": currentPage <= 1 }),\n React.createElement(\"form\", { onSubmit: handleFormSubmit },\n React.createElement(PageInput, { \"aria-live\": \"polite\", \"aria-label\": `page ${currentPage} of ${totalPagesCount}`, size: ComponentSize.sm, type: \"number\", value: pageInputValue, min: \"1\", max: `${totalPagesCount}`, onChange: handleInputChange, onBlur: handleSubmit })),\n React.createElement(PageCount, { count: totalPagesCount }),\n React.createElement(PaginationButton, { onClick: handleIncrement, icon: React.createElement(RightArrowIcon, null), size: \"sm\", \"aria-label\": \"go to next page\", \"aria-disabled\": currentPage >= totalPagesCount }),\n React.createElement(PaginationButton, { onClick: handleSkipToEnd, icon: React.createElement(EndArrowIcon, null), size: \"sm\", \"aria-label\": \"go to last page\", \"aria-disabled\": currentPage >= totalPagesCount })));\n};\n//# sourceMappingURL=Pagination.js.map","import React from 'react';\nimport { Button } from '../Button';\nimport { theme } from '../../theme';\nimport { Container, Input, IconContainer, Loader } from './styled';\nimport { CrossIcon } from '../../tempIcons/CrossIcon';\nimport { SearchIcon } from '../../tempIcons/SearchIcon';\nimport { sizes } from '../../theme/modules/sizes';\nexport const Search = ({ type = 'text', disabled = false, onClearClick, onChange, onBlur, onFocus, onKeyUp, onKeyDown, onKeyPress, value = '', error, placeholder = '', className = '', name, isLoading = false, fill, reversed = false, autoComplete = 'on', size = 'base', }) => {\n const shouldShowClear = value && value.length > 0;\n const renderIcon = () => {\n if (isLoading) {\n return React.createElement(Loader, { height: 24, color: fill || theme.colors.secondary.blue.base });\n }\n if (shouldShowClear && onClearClick) {\n return (React.createElement(Button, { variant: \"unstyled\", onClick: onClearClick, style: { display: 'flex' }, \"aria-label\": \"Clear text\" },\n React.createElement(CrossIcon, { color: fill || theme.colors.neutral.ink.dark })));\n }\n return (React.createElement(Button, { variant: \"unstyled\", onClick: () => onChange(value), style: { display: 'flex' }, \"aria-label\": \"Search\" },\n React.createElement(SearchIcon, { color: fill || theme.colors.neutral.ink.dark, height: sizes.md, width: sizes.md })));\n };\n return (React.createElement(Container, { className: className, iconPosition: reversed ? 'left' : 'right' },\n React.createElement(Input, { size: size, type: type, value: value, onChange: onChange, onBlur: onBlur, onFocus: onFocus, onKeyUp: onKeyUp, onKeyDown: onKeyDown, onKeyPress: onKeyPress, placeholder: placeholder, name: name, disabled: disabled, error: error, autoComplete: autoComplete }),\n React.createElement(IconContainer, null, renderIcon())));\n};\n//# sourceMappingURL=Search.js.map","import React from 'react';\nimport { Button } from '../Button';\nimport { SegmentedControlContainer } from './styled';\nexport const SegmentedControl = ({ options, selected, className, onChange, }) => (React.createElement(SegmentedControlContainer, { className: className ? `${className}-container` : undefined }, options.map((option) => (React.createElement(Button, { variant: option.value === selected ? 'primary' : 'default', key: option.key, onClick: () => onChange(option.value), disabled: option.disabled, className: option.value === selected ? 'veeqo-components-active-button' : '' }, option.label)))));\n//# sourceMappingURL=SegmentedControl.js.map","import { CSSTransition, TransitionGroup } from 'react-transition-group';\nimport React, { useEffect } from 'react';\nimport { createPortal } from 'react-dom';\nimport { ToastsLayoutContainer } from './components/styled';\nimport { Toast } from './components/Toast';\nexport const ToastsLayout = ({ className, e2eClassName, toasts, minWidth = '50vw', max = 3, onClose, }) => {\n useEffect(() => {\n if (max && toasts.length > max)\n onClose(toasts[0].key);\n }, [toasts, max, onClose]);\n return createPortal(React.createElement(ToastsLayoutContainer, { direction: \"vertical\", alignX: \"center\", spacing: 4 },\n React.createElement(TransitionGroup, { component: null }, [...toasts].reverse().map((toast, index) => (React.createElement(CSSTransition, { key: toast.key, timeout: 500, classNames: \"veeqo-components-toast\" },\n React.createElement(Toast, Object.assign({ className: className, e2eClassName: e2eClassName, minWidth: minWidth, last: index === toasts.length - 1, onClose: () => onClose(toast.key) }, toast))))))), document.body);\n};\n//# sourceMappingURL=ToastsLayout.js.map","import React from 'react';\nimport { StyledButton } from './styled';\nexport const ToggleButton = ({ children, checked, size = 'base', disabled = false, onChange, }) => (React.createElement(StyledButton, { type: \"button\", checked: checked, size: size, disabled: disabled, \"aria-pressed\": checked, tabIndex: \"0\", onClick: () => onChange(!checked) }, children));\n//# sourceMappingURL=ToggleButton.js.map","import React from 'react';\nimport { Popup } from './components/Popup';\nimport { PopupContent, VideoWrapper, ButtonSC } from './styled';\nimport { useClickOutside } from '../../hooks';\nimport { CrossIcon } from '../../tempIcons/CrossIcon';\nexport const VideoModal = ({ id, youtubeVideoId, showVideoModal, handleCloseClick, }) => {\n const ref = useClickOutside(showVideoModal, handleCloseClick);\n return (React.createElement(Popup, { shouldShow: showVideoModal, className: `${id}-video` },\n React.createElement(PopupContent, { \"data-testid\": \"video-modal_popup-content\", className: `video-modal--${showVideoModal ? 'visible' : 'hidden'}` },\n React.createElement(VideoWrapper, { ref: ref },\n React.createElement(\"iframe\", { title: `${id}-video`, src: `https://www.youtube.com/embed/${youtubeVideoId}`, frameBorder: \"0\", allow: \"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\", allowFullScreen: true }),\n React.createElement(ButtonSC, { variant: \"flat\", onClick: handleCloseClick, \"data-testid\": \"video-modal--close\", icon: React.createElement(CrossIcon, { color: \"white\" }) })))));\n};\n//# sourceMappingURL=VideoModal.js.map","import { useState, useEffect } from 'react';\nexport const useDebounce = (value, timeout) => {\n const [state, setState] = useState(value);\n useEffect(() => {\n // Set timeout to run after delay\n const handler = setTimeout(() => setState(value), timeout);\n // clear the setTimeout listener on unMount\n return () => clearTimeout(handler);\n }, [value, timeout]);\n return state;\n};\n//# sourceMappingURL=useDebounce.js.map","import { useState } from 'react';\nexport function useNested() {\n const [expandedRowIds, setExpandedRowIds] = useState([]);\n // TODO: Memoise this\n const setExpanded = (expanded, rowId) => {\n if (!rowId)\n return;\n if (expanded) {\n // Add rowId to expandedRowIds\n if (expandedRowIds.includes(rowId))\n return;\n const rowIds = [...expandedRowIds, rowId];\n setExpandedRowIds(rowIds);\n }\n else {\n // Remove rowIds from expandedRowIds\n const index = expandedRowIds.findIndex((id) => id === rowId);\n if (index < 0)\n return;\n const rowIds = [...expandedRowIds];\n rowIds.splice(index, 1);\n setExpandedRowIds(rowIds);\n }\n };\n return {\n nestedTableProps: {\n expandedRowIds,\n setExpanded,\n },\n };\n}\n//# sourceMappingURL=useNested.js.map","import { useState } from 'react';\nexport const useTabs = (tabs, config) => {\n const { defaultActiveIndex = 0 } = config || {};\n const [listOfTabs] = useState(tabs);\n const [active, setActive] = useState(listOfTabs[defaultActiveIndex]);\n return [\n active,\n (key) => {\n const newActiveTab = listOfTabs.find((tab) => tab.key === key);\n if (newActiveTab) {\n setActive(newActiveTab);\n }\n },\n ];\n};\n//# sourceMappingURL=useTabs.js.map","import React, { useEffect } from 'react';\nexport const withDeprecated = (Component) => (props) => {\n useEffect(() => {\n // eslint-disable-next-line no-console\n console.warn(`${Component.name} is deprecated.`);\n }, []);\n return React.createElement(Component, Object.assign({}, props));\n};\n//# sourceMappingURL=withDeprecated.js.map"],"names":["BaseContainer","styled","default","div","withConfig","displayName","componentId","componentMap","inputLabel","inputLabelSmall","headingSmall","headingMedium","headingLarge","headingXL","headingXXL","button","buttonSmall","getComponentOverride","as","variant","colors","brand","blue","lightest","light","base","dark","darkest","peach","neutral","ink","grey","greyBlue","secondary","red","yellow","green","lime","teal","aqua","purple","pink","orange","system","scrollbar","thumb","background","breakpoints","mobile","tablet","lgTablet","desktop","lgDesktop","radius","sm","md","lg","full","Shadows","SizeAlias","sizeScale","increment","unit","count","sizes","i","value","buildSizeScale","sizeAliases","none","line","xs","xl","xxl","Object","assign","common","fontFamily","text","fontStyle","fontWeight","fontSize","lineHeight","color","textDecoration","letterSpacing","headingTable","subheadingLarge","subheadingMedium","subheadingSmall","subheadingSmallBold","body","bodySmall","bodyBold","bodyBoldDark","bodySmallBold","linkLarge","linkMedium","link","linkSmall","hintText","placeholder","placeholderSmall","placeholderCode","placeholderCodeSmall","error","errorSmall","successSmall","theme","layers","popup","modal","tooltip","shadows","Text","span","attrs","muted","TapBarChild","Left","glyphColor","Right","AccordionSummary","summary","Top","Description","AccordionContent","motion","AccordionDetails","details","UpArrowIcon","props","React","createElement","viewBox","fill","xmlns","role","height","fillRule","clipRule","d","__rest","s","e","t","p","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","length","propertyIsEnumerable","SuppressedError","generateId","prefix","Math","floor","random","Portal","PureComponent","constructor","super","this","id","portalNode","state","isMounted","componentDidMount","rootElementRef","document","setAttribute","style","cssText","appendChild","setState","componentWillUnmount","removeChild","render","children","createPortal","PopoverDialog","dialog","zIndex","Backdrop","buildClassnames","names","filter","Boolean","join","hexToRgb","hex","hexTmp","replace","m","r","g","b","result","exec","parseInt","getOpaqueHexColor","opacity","rgb","useHandleFocus","ref","onClose","disableFocusLock","handleKeyDown","event","key","focusableElements","querySelectorAll","firstElement","lastElement","shiftKey","activeElement","preventDefault","focus","handleFocusTrap","Popover","_a","passedId","placement","anchorElement","onShouldClose","dialogProps","popperElement","setPopperElement","useState","styles","attributes","update","usePopper","useMemo","popoverId","useEffect","_","console","warn","hasAttribute","useUpdateAriaAnchor","resizeObserver","ResizeObserver","observe","disconnect","window","addEventListener","removeEventListener","onClick","open","popper","onKeyDown","TailSpin","width","className","label","x1","y1","x2","y2","stopColor","stopOpacity","offset","transform","stroke","strokeWidth","attributeName","type","from","to","dur","repeatCount","cx","cy","Grid","begin","values","calcMode","ThreeDots","Loader","MainContent","hasText","loading","size","BaseButton","paddingLeft","paddingRight","borderRadius","outlineWidth","hasIcon","hasDropdown","DefaultButton","DefaultDestructiveButton","PrimaryButton","PrimaryDestructiveButton","FlatButton","UnstyledButton","LinkButton","LoadingWrapper","DropdownIcon","variantMap","primary","destructive","primaryDestructive","flat","unstyled","Button","forwardRef","icon","dropdown","otherProps","VariantButton","hasChildren","undefined","Header","header","HeaderGrid","DownArrowIcon","CrossIcon","CardHeader","title","subtitle","headerVariant","action","ActionSlot","isCollapsed","onClickCollapse","onClickClose","elevationShadowMap","accents","info","success","Footer","footer","Section","section","FullBleed","Body","Surface","elevation","accent","collapseAnimationVariants","expanded","collapsed","Card","HeaderActionSlot","collapsable","renderFooter","setIsCollapsed","headerMarkup","showBody","bodyMarkup","animate","variants","transition","duration","ease","footerMarkup","ListCard","SectionHeading","Item","itemMap","item","ActionList","items","sections","buttonVariant","buttonSize","isActive","setIsActive","anchorEl","setAnchorEl","renderItem","ItemComponent","handleClick","callback","listItemMarkup","map","Fragment","CommonAnchor","a","Container","BasicDropdown","BasicContainer","Wrap","Dropdown","reversed","AnimatedDropdown","cta","shouldShowDropdown","onClickAway","timeout","transitionClassnames","onMouseEnter","onMouseLeave","dropdownRef","useRef","handleClickAway","current","contains","target","useClickAway","CSSTransition","in","classNames","unmountOnExit","AvatarSC","textColor","bgColor","Position","Sides","Hoverable","TooltipText","Triangle","Tip","tipMinWidth","tipMaxWidth","defaultConfig","side","TOP","triangleOffset","Tooltip","content","config","withTriangle","initialShouldShow","useReactPortal","trim","usedConfig","container","tip","wrap","triangle","hoverable","shouldShow","setShouldShow","hoverableElement","setHoverableElement","modifiers","name","options","show","useCallback","hide","tooltipStyles","tooltipMarkup","triangleOffsetSize","ReactDOM","BaseBadge","hideBorder","warning","BannerLayout","accentColor","backgroundColor","Row","Col","IconCol","ChildContainer","HeaderCol","StyledText","accentColors","help","BreadcrumbsSC","ul","BreadcrumbSC","li","RightArrowIcon","Breadcrumb","LinkComponent","href","DefaultSeparator","DefaultLink","BreadcrumbText","Alignments","Stack","direction","alignX","alignY","spacing","alignItems","justifyContent","flexDirection","itemFlex","marginTop","marginLeft","alignMap","top","center","RootLayout","InputLayout","align","AccessoryLayout","TextLayout","LabelText","HintText","ErrorText","Wrapper","disabled","BorderedWrapper","BlockTooltip","HelpIcon","Choice","hint","bordered","Badge","Accessory","contentMarkup","htmlFor","Input","input","Checkbox","checked","indeterminate","ariaLabel","onChange","checkboxRef","handleChange","currentTarget","Radio","Fieldset","fieldset","Legend","legend","ChoiceList","Component","arguments","allowMultiple","handleChangeMultiple","handleChangeSingle","selected","newSelected","selectedValue","InputComponent","option","includes","SuccessIcon","ClipboardIcon","iconSizes","XSButton","alignmentToFlex","parseWidth","fallback","min","max","generateTableCss","pinnedLeft","pinnedRight","cellWidths","scrollPosition","visible","stripingMode","pinnedLeftStyles","index","array","slice","reduce","acc","val","sumAllBeforeIndex","pinnedRightStyles","sumAllAfterIndex","isLeftShadowVisible","leftShadow","isRightShadowVisible","rightShadow","stripingRow","stripingNested","col","SortDirection","DoubleArrowIcon","ArrowUpIcon","ArrowDownIcon","GetSortIcon","sortState","columnId","ascending","useCellWidths","tableRef","containerRef","setCellWidths","updateCellWidths","cells","widths","Array","cell","getBoundingClientRect","resizeObserverCallback","throttle","useColumns","columns","hidden","pinned","notPinned","useDragToScroll","targetRef","isDragging","scrollTarget","position","left","x","mouseMoveHandler","dx","clientX","scrollLeft","cursor","userSelect","mouseUpHandler","removeProperty","mouseDownHandler","useScrollPosition","setScrollPosition","updateScrollPosition","scrollWidth","headerCellHeight","th","SelectionHeader","selectionMode","headerProps","Cell","td","SelectionCell","rowId","cellProps","emptySelectionState","useSelection","selectionState","enabledRowIds","selectionEnabled","selectedRowIds","setSelectedRowIds","toggleAllSelected","selectionColumn","renderHeader","column","renderCell","row","actions","rowState","setSelected","rowIds","findIndex","splice","SortIndicator","HeaderContent","ClickableHeaderContent","onChangeSort","sortable","Error","toString","ColumnHeaderContent","columnHeaderProps","log","nextSortState","isColumnSame","isDefaultDirection","newSortDirection","descending","getNextSortState","shimmerLight","shimmerDark","LoadingCellContent","Content","ActionBar","intersectionTargetRef","isSticky","setIsSticky","intersectionObserver","IntersectionObserver","entries","forEach","entry","isIntersecting","containerRect","stickyPositionStyles","right","VisiblityIcon","VisiblityOffIcon","ReorderIcon","EmptyBodyContent","columnCount","EmptyBodyGlyphWrapper","NoWrap","tr","ScrollContainer","TableGrid","table","css","Truncate","borderModeStyles","vertical","borderMode","StickyHead","tableCss","stickyContainerRef","isVisible","setIsVisible","setContainerRect","updateContainerDimensions","targetRect","newRect","updateContainerScrollPosition","xScrollOffset","scrollTo","threshold","containerStyle","overflowX","overflowY","borderBottom","allCss","getRowState","expandedRowIds","disabledRowIds","InfoIcon","defaultEmptyState","heading","emptyAction","DataTable","ActionBarSlot","emptyState","loadingRowCount","rows","setExpanded","enableStickyHeader","scrollContainerRef","columnsWithSelection","allColumns","loadingRows","data","renderLoadingCell","subheading","renderRow","e2eClassName","renderNestedRow","nestedRow","_b","nestedRowE2eClassName","e2eClassNames","renderNestedCell","renderSection","isExpanded","nestedRows","headersMarkup","shouldRenderFooter","some","shouldRenderActionBar","hasNestedRows","renderBody","footerProps","defaultProps","ColumnMenu","columnGroups","setColumns","popoverAnchor","setPopoverAnchor","showPopover","setShowPopover","columnEntries","columnsMap","fromEntries","groups","group","setHidden","groupIndex","columnIds","newColumns","border","padding","flex","List","dl","ItemRow","DescriptionContainer","Term","dt","dd","ColumnGrid","showSidebar","ContentContainer","InputGroup","ComponentSize","Label","Hint","RootStack","withLabels","hasError","pseudoStates","inputSize","Textarea","textarea","NUMBER_REGEX","TextField","multiline","pattern","step","spellCheck","newValue","RegExp","test","StyledTextField","StyledButton","DimensionsInput","handleChangeHeight","handleChangeWidth","handleChangeLength","rest","useClickOutside","isOpen","escapeListener","clickListener","useDropdown","setShouldShowDropdown","toggleShouldShowDropdown","closeDropdown","FocusVisibleContext","createContext","hadKeyboardEvent","isInitialized","useHover","initialState","isHovered","setIsHovered","useIsOverflowing","isOverflowing","setIsOverflowing","isAtBottom","setIsAtBottom","hasOverflow","scrollHeight","clientHeight","onScroll","scrollTop","NonSelectableText","GroupLabel","MainIcon","StyledCrossIcon","generateClassNames","filterTagDropdown","cross","PlaceholderImage","CommonImage","img","previewEnabled","PreviewImageContainer","PreviewImage","image","previewImageContainer","iconSize","defaultErrorState","subTitle","ScrollPosition","fixedColumnShadow","TooltipContent","scrollDisabled","showScrollbar","lastStartFixedColumnsIndex","firstEndFixedColumnsIndex","middle","end","start","WrapperBordered","Head","thead","tbody","fixedColumnsStyle","tfoot","grow","HeaderCell","alignmentMap","HeaderCellLayout","Table","isFixedLayout","striped","tableLoading","noWrap","StickyHeaderWrapper","FakeHeaderTable","SpecificStateContainer","EllipseContainer","TitleText","SubTitleText","SpecificState","CellButton","ClickableButton","SkeletonContentWrapper","SkeletonContentComponent","isLoading","SkeletonContent","SkeletonCell","StickyHeader","wrapperRef","wrapperStyle","headerWrapperRef","setHeaderWrapperRef","topOffset","handleScrollChange","bottom","sticky","useStickyHeader","wrapperWidth","useScroll","updateScroll","tableLayout","convertFixedColumnInlineStyleToStyled","push","abs","SkeletonHeaderCell","DoubleArrowAscIcon","DoubleArrowDescIcon","IconUnsorted","IconSortAsc","IconSortDesc","LegacyDataTable","borderless","headers","renderLoadingRow","renderFooterRow","renderFooterLoadingRow","omitFooterSelectionCell","disabledSelectionInputRowIds","onChangeSelectedRowIds","sortColumnId","sortDirection","isError","skeletonRowsNumber","isHeaderSticky","stickyHeaderStyle","customSpecificState","bodyHeightInSpecificStates","startFixedColumnsNumber","endFixedColumnsNumber","WrapperComponent","isEmpty","isFixedColumnsNotEnabled","refValue","handleScroll","el","scrollValue","castWidthToNumber","generateFixedColumnInlineStyle","generateFixedColumnsStyle","startColumns","endColumns","totalStartOffset","totalEndOffset","headerWidth","handleSelectRow","newSelectedRowIds","handleSelectAll","handleClickSortableHeader","nextColumnId","nextDirection","renderHeaderCell","sortIcon","headerContents","renderSkeletonHeaderCell","selectionCellStyle","startHeaderIndex","endHeaderIndex","headerCellStyle","find","skeleton","skeletonStyle","renderSelectionInput","isSelected","inputProps","renderSkeletonSelectionInput","rowIndex","generalStyle","margin","animationDuration","getNestedRow","isHidden","renderDefaultLoadingRow","unshift","getFooter","renderedRows","_c","bodyClassName","rowE2eClassName","rowClassName","specificStateValues","ClickableCell","EditableCell","LoginButton","buttonImg","buttonDescription","NonScrollableBody","createGlobalStyle","MainSection","fullBleed","isScrollable","hasFooterSlot","footerSlot","heightMap","widthMap","fullScreenBreakpointMap","StyledDialog","initial","y","bounce","exit","Dialog","shadow","Title","h1","Subtitle","Image","ActionsContainer","SidebarToggleButton","LeftArrowIcon","PageLimitContainer","PaginationButton","PageInput","PageCount","usePagination","currentPage","totalPagesCount","handleChangePage","pageInputValue","setPageInputValue","validatePageValue","handleSubmit","handleIncrement","handleDecrement","handleInputChange","intValue","newPage","handleFormSubmit","StartArrowIcon","EndArrowIcon","paginationDefaultRangeList","handleRangeListChange","Items","paginationRange","PaginationRange","onPaginationRangeChange","setDropdownValue","currentValue","dropdownValue","toggleShouldShow","reversedDropdown","StepButton","Stepper","onIncrement","onDecrement","PrefixContainer","PrefixText","PriceInputGroup","PriceInput","currency","onPriceChange","priceValue","parseFloat","toFixed","onBlur","roundedValue","form","blur","IconContainer","iconPosition","SearchIcon","buttonBackgroundColor","buttonBorderColor","activeButtonColor","SegmentedControlContainer","SelectInput","select","sizeVariant","Select","TableHeader","TableBody","TableRow","TableCell","TableHeaderCell","SimpleTable","SliderContainer","SLIDER_SIZE","SliderTrack","SliderDiv","SliderRange","sliderRange","slider","startSlider","endSlider","Tag","ToastsLayoutContainer","Toast","minWidth","last","IconWrap","ContentStack","toastTypes","merge","closeIcon","iconSlot","ToastContainer","Slider","switched","Switch","small","Toggle","borderColor","commonStyles","Shadow","WithPortal","usePortal","Popup","ScrollLock","PopupContent","VideoWrapper","ButtonSC","ViewTypes","CounterText","Contour","colourPalette","customTextColour","active","CounterContainer","IconStyling","CustomIconWrapper","EditIcon","delete","edit","counter","WeightInput","weightUnit","handleChangeGram","gram","isWeightImperial","handleChangePound","pound","handleChangeOunce","ounce","description","shouldOpenOnMount","shouldOpen","setShouldOpen","rotate","userInitials","toUpperCase","match","BadgeVariant","Pill","marginRight","Separator","pathname","onCopy","copied","setCopied","handleCopy","navigator","clipboard","writeText","setTimeout","horizontal","renderDescription","isArray","term","shouldShowSidebar","setShouldShowSidebar","shouldCloseOnClickAway","setHadKeyboardEvent","onPointerDown","onInitialPointerMove","nodeName","toLowerCase","removeInitialPointerMoveListeners","addInitialPointerMoveListeners","metaKey","altKey","ctrlKey","onVisibilityChange","visibilityState","Provider","src","alt","previewWidth","previewHeight","previewPlacement","placeholderWidth","placeholderHeight","disablePlaceholder","isPreviewOpen","setIsPreviewOpen","imageState","setImageState","isLoaded","referenceElement","setReferenceElement","openImagePreview","closeImagePreview","isImageHidden","onLoad","onError","display","setImage","onMouseDown","onMouseUp","showHeaderCloseButton","parentOnClose","modalRef","mainSectionRef","setMainSectionRef","removeAttribute","showModal","isContentOverflowing","close","AnimatePresence","headerSlot","hasHeaderSlot","headerTitle","headerSubtitle","leftActions","rightActions","actionProps","imageSrc","quickActions","backAction","onClickPrevious","onClickNext","onClickToggleSidebar","actionsMarkup","quickActionsMarkup","backActionMarkup","toggleSidebarMarkup","testId","onSubmit","onClearClick","onFocus","onKeyUp","onKeyPress","autoComplete","shouldShowClear","onSlideStart","onSlideEnd","setIsDragging","draggingSliderIndex","setDraggingSliderIndex","startSliderRef","endSliderRef","handleMouseMove","sliderValue","containerSize","pageX","diff","ceil","decimalPlaces","split","pop","resultValue","Number","handleMouseUp","handleMouseDown","handleStartSliderMouseDown","handleEndSliderMouseDown","startSliderEl","endSliderEl","renderSlider","valueNow","sliderClassName","renderRangeSlider","rangeSliderValue","handleValueStart","handleValueEnd","rangeWidth","handleValue","renderSingleSlider","toasts","TransitionGroup","component","reverse","toast","tabIndex","youtubeVideoId","showVideoModal","handleCloseClick","frameBorder","allow","allowFullScreen","onDelete","onEdit","handleEnter","handleLeave","handleDelete","stopPropagation","handleEdit","isDraft","draft","isSaved","saved","handler","clearTimeout","isFocused","setIsFocused","useContext","focusVisible","setExpandedRowIds","nestedTableProps","tabs","defaultActiveIndex","listOfTabs","setActive","newActiveTab","tab"],"mappings":"8aACY,MAACA,EAAgBC,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,qBAAsBC,YAAa,eAAiB,8DCDhHC,EAAe,CACjBC,WAAY,QACZC,gBAAiB,QACjBC,aAAc,KACdC,cAAe,KACfC,aAAc,KACdC,UAAW,KACXC,WAAY,KAEZC,OAAQ,SACRC,YAAa,UAEJC,EAAuB,CAACC,EAAIC,IACjCD,IAEAC,EACOZ,EAAaY,QADxB,GCfSC,EAAS,CAClBC,MAAO,CACHC,KAAM,CACFC,SAAU,UACVC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,QAAS,WAEbC,MAAO,CACHL,SAAU,UACVC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,QAAS,YAGjBE,QAAS,CACLC,IAAK,CACDP,SAAU,UACVC,MAAO,UACPC,KAAM,UACNC,KAAM,WAEVK,KAAM,CACFR,SAAU,UACVC,MAAO,UACPC,KAAM,UACNC,KAAM,WAEVM,SAAU,CACNT,SAAU,UACVC,MAAO,UACPC,KAAM,UACNC,KAAM,YAGdO,UAAW,CACPC,IAAK,CACDX,SAAU,UACVC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,QAAS,WAEbQ,OAAQ,CACJZ,SAAU,UACVC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,QAAS,WAEbS,MAAO,CACHb,SAAU,UACVC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,QAAS,WAEbU,KAAM,CACFd,SAAU,UACVC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,QAAS,WAEbW,KAAM,CACFf,SAAU,UACVC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,QAAS,WAEbY,KAAM,CACFhB,SAAU,UACVC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,QAAS,WAEba,OAAQ,CACJjB,SAAU,UACVC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,QAAS,WAEbL,KAAM,CACFC,SAAU,UACVC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,QAAS,WAEbc,KAAM,CACFlB,SAAU,UACVC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,QAAS,WAEbe,OAAQ,CACJnB,SAAU,UACVC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,QAAS,YAGjBgB,OAAQ,CACJC,UAAW,CACPC,MAAO,yBACPC,WAAY,iBChHXC,EAAc,CACvBC,OAAQ,QACRC,OAAQ,QACRC,SAAU,QACVC,QAAS,SACTC,UAAW,UCLFC,EAAS,CAClBC,GAAI,WACJ7B,KAAM,UACN8B,GAAI,SACJC,GAAI,UACJC,KAAM,OCLH,IAAIC,ECAPC,GDCJ,SAAWD,GACPA,EAAY,GAAI,qCAChBA,EAAc,KAAI,oCAClBA,EAAY,GAAI,sCAChBA,EAAY,GAAI,qCACnB,CALD,CAKGA,IAAYA,EAAU,CAAA,ICLzB,SAAWC,GACPA,EAAgB,KAAI,OACpBA,EAAgB,KAAI,OACpBA,EAAc,GAAI,KAClBA,EAAc,GAAI,KAClBA,EAAgB,KAAI,OACpBA,EAAc,GAAI,KAClBA,EAAc,GAAI,KAClBA,EAAc,GAAI,KAClBA,EAAe,IAAI,KACtB,CAVD,CAUGA,IAAcA,EAAY,CAAE,IAUxB,MAAMC,EATb,UAAwBC,UAAEA,EAASC,KAAEA,EAAIC,MAAEA,IACvC,MAAMC,EAAQ,CAAA,EAEd,IAAK,IAAIC,EAAI,EAAGA,GAAKF,EAAOE,IAAK,CAC7B,MAAMC,EAAQD,EAAIJ,EAClBG,EAAMC,GAAK,GAAGC,IAAQJ,GACzB,CACD,OAAOE,CACX,CACyBG,CAAe,CAAEN,UAAW,IAAMC,KAAM,MAAOC,MAAO,KAClEK,EAAc,CACvB,CAACT,EAAUU,MAAO,IAClB,CAACV,EAAUW,MAAO,MAClB,CAACX,EAAUY,IAAKX,EAAU,GAC1B,CAACD,EAAUL,IAAKM,EAAU,GAC1B,CAACD,EAAUlC,MAAOmC,EAAU,GAC5B,CAACD,EAAUJ,IAAKK,EAAU,GAC1B,CAACD,EAAUH,IAAKI,EAAU,GAC1B,CAACD,EAAUa,IAAKZ,EAAU,IAC1B,CAACD,EAAUc,KAAMb,EAAU,KAElBI,EAAQU,OAAOC,OAAOD,OAAOC,OAAO,GAAIP,GAAcR,GChCtDgB,EAAS,CAClBC,WAAY,gJAEHC,EAAO,CAChBhE,WAAY,CACR+D,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIL,KAC1B2D,eAAgB,OAChBC,cAAe,aAEnBxE,UAAW,CACPgE,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIL,KAC1B2D,eAAgB,OAChBC,cAAe,YAEnBzE,aAAc,CACViE,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIL,KAC1B2D,eAAgB,OAChBC,cAAe,aAEnB1E,cAAe,CACXkE,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIL,KAC1B2D,eAAgB,OAChBC,cAAe,aAEnB3E,aAAc,CACVmE,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIL,KAC1B2D,eAAgB,OAChBC,cAAe,aAEnBC,aAAc,CACVT,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIL,KAC1B2D,eAAgB,OAChBC,cAAe,KAEnBE,gBAAiB,CACbV,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,SACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIN,MAC1B4D,eAAgB,OAChBC,cAAe,aAEnBG,iBAAkB,CACdX,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,SACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIN,MAC1B4D,eAAgB,OAChBC,cAAe,aAEnBI,gBAAiB,CACbZ,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,SACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIN,MAC1B4D,eAAgB,OAChBC,cAAe,KAEnBK,oBAAqB,CACjBb,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIL,KAC1B2D,eAAgB,OAChBC,cAAe,KAEnBM,KAAM,CACFd,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,SACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIL,KAC1B2D,eAAgB,OAChBC,cAAe,aAEnBO,UAAW,CACPf,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,SACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIL,KAC1B2D,eAAgB,OAChBC,cAAe,KAEnBQ,SAAU,CACNhB,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIL,KAC1B2D,eAAgB,OAChBC,cAAe,aAEnBS,aAAc,CACVjB,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIJ,KAC1B0D,eAAgB,OAChBC,cAAe,KAEnBU,cAAe,CACXlB,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIL,KAC1B2D,eAAgB,OAChBC,cAAe,KAEnBtE,OAAQ,CACJ8D,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOa,UAAUX,KAAKG,KAC7B2D,eAAgB,OAChBC,cAAe,aAEnBrE,YAAa,CACT6D,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOa,UAAUX,KAAKG,KAC7B2D,eAAgB,OAChBC,cAAe,aAEnBW,UAAW,CACPnB,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,SACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOa,UAAUX,KAAKG,KAC7B2D,eAAgB,YAChBC,cAAe,aAEnBY,WAAY,CACRpB,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,SACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOa,UAAUX,KAAKG,KAC7B2D,eAAgB,YAChBC,cAAe,aAEnBa,KAAM,CACFrB,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,SACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOa,UAAUX,KAAKG,KAC7B2D,eAAgB,YAChBC,cAAe,aAEnBc,UAAW,CACPtB,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,SACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOa,UAAUX,KAAKG,KAC7B2D,eAAgB,YAChBC,cAAe,KAEnB7E,WAAY,CACRqE,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIL,KAC1B2D,eAAgB,OAChBC,cAAe,aAEnB5E,gBAAiB,CACboE,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIL,KAC1B2D,eAAgB,OAChBC,cAAe,KAEnBe,SAAU,CACNvB,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,SACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIN,MAC1B4D,eAAgB,OAChBC,cAAe,KAEnBgB,YAAa,CACTxB,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,SACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIP,SAC1B6D,eAAgB,OAChBC,cAAe,aAEnBiB,iBAAkB,CACdzB,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,SACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIP,SAC1B6D,eAAgB,OAChBC,cAAe,KAEnBkB,gBAAiB,CACb1B,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,SACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIP,SAC1B6D,eAAgB,OAChBC,cAAe,UAEnBmB,qBAAsB,CAClB3B,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,SACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOS,QAAQC,IAAIP,SAC1B6D,eAAgB,OAChBC,cAAe,YAEnBoB,MAAO,CACH5B,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOa,UAAUC,IAAIT,KAC5B2D,eAAgB,OAChBC,cAAe,aAEnBqB,WAAY,CACR7B,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOa,UAAUC,IAAIT,KAC5B2D,eAAgB,OAChBC,cAAe,KAEnBsB,aAAc,CACV9B,WAAYD,EAAOC,WACnBE,UAAW,SACXC,WAAY,IACZC,SAAU,OACVC,WAAY,OACZC,MAAO/D,EAAOa,UAAUG,MAAMX,KAC9B2D,eAAgB,OAChBC,cAAe,MClTVuB,EAAQlC,OAAOC,OAAOD,OAAOC,OAAO,GAAIC,GAAS,aAAE7B,EAChE3B,OAAIA,EACAyF,OCTkB,CAClBpF,KAAM,EACNqF,MAAO,IACPC,MAAO,IACPC,QAAS,KDMb3D,OAAIA,EAAQ4D,QAASvD,QAASM,EAC9Bc,KAAIA,KEREA,KAAEA,EAAM1D,OAAAA,EAAMyD,WAAEA,GAAe+B,EACxBM,EAAOjH,EAAMC,QAACiH,KAAKC,OAAM,EAAGlG,KAAIC,cAAe,CACxDD,GAAID,EAAqBC,EAAIC,OAC7Bf,WAAW,CAAEC,YAAa,YAAaC,YAAa,eAAiB,iIAAiIuE,oCAA6C,EAAG1D,cAA2B,WAAZA,GAAoC,gBAAZA,IAC7R,oFAIG,EAAGA,UAASkG,SAAQ,MACvB,IAAKlG,EACD,MAAO,GACX,MAAMgE,EAAQkC,EAAQjG,EAAOS,QAAQC,IAAIP,SAAWuD,EAAK3D,GAASgE,MAClE,MAAO,wBACUL,EAAK3D,GAAS0D,kCACfC,EAAK3D,GAAS4D,kCACbD,EAAK3D,GAAS6D,iCAChBF,EAAK3D,GAAS8D,iCACZH,EAAK3D,GAAS+D,6BACpBC,8BACUL,EAAK3D,GAASiE,0CACfN,EAAK3D,GAASkE,sBACjC,IClBCiC,EAAcrH,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,mBAAoBC,YAAa,eAAiB,sDAChHiH,EAAOtH,EAAMC,QAACoH,GAAalH,WAAW,CAAEC,YAAa,YAAaC,YAAa,gBAAkB,gCAAgC0D,EAAMvC,cAAcuC,EAAMvC,cAAc,EAAG+F,gBAAiBA,MAC7LC,EAAQxH,EAAMC,QAACoH,GAAalH,WAAW,CAAEC,YAAa,aAAcC,YAAa,gBAAkB,wCAKnGoH,EAAmBzH,EAAAA,QAAO0H,QAAQvH,WAAW,CAAEC,YAAa,wBAAyBC,YAAa,gBAAkB,sHAAsHsG,EAAMxF,OAAOS,QAAQE,KAAKL,iDAAiDkF,EAAMxF,OAAOa,UAAUX,KAAKE,uCAAuCoF,EAAMxF,OAAOa,UAAUX,KAAKE,UACpZoG,EAAM3H,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,WAAYC,YAAa,gBAAkB,kEACjGuH,EAAc5H,EAAMC,QAACgH,GAAM9G,WAAW,CAAEC,YAAa,mBAAoBC,YAAa,gBAAkB,kBACxGwH,EAAmB7H,EAAAA,QAAO8H,EAAAA,OAAO/H,IAAgBI,WAAW,CAAEC,YAAa,wBAAyBC,YAAa,eAAiB,wEAClI0H,EAAmB/H,EAAMC,QAAC+H,QAAQ7H,WAAW,CAAEC,YAAa,wBAAyBC,YAAa,gBAAkB,wECf7G4H,EAAeC,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,6BAA8BC,KAAM,eAAgBC,OAAQ1E,EAAMT,IAAM4E,GACjMC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,6GAA8GN,KAAM,kBCuC5L,SAASO,EAAOC,EAAGC,GACtB,IAAIC,EAAI,CAAA,EACR,IAAK,IAAIC,KAAKH,EAAOrE,OAAOyE,UAAUC,eAAeC,KAAKN,EAAGG,IAAMF,EAAEM,QAAQJ,GAAK,IAC9ED,EAAEC,GAAKH,EAAEG,IACb,GAAS,MAALH,GAAqD,mBAAjCrE,OAAO6E,sBACtB,KAAItF,EAAI,EAAb,IAAgBiF,EAAIxE,OAAO6E,sBAAsBR,GAAI9E,EAAIiF,EAAEM,OAAQvF,IAC3D+E,EAAEM,QAAQJ,EAAEjF,IAAM,GAAKS,OAAOyE,UAAUM,qBAAqBJ,KAAKN,EAAGG,EAAEjF,MACvEgF,EAAEC,EAAEjF,IAAM8E,EAAEG,EAAEjF,IAF4B,CAItD,OAAOgF,CACX,CAuQkD,mBAApBS,iBAAiCA,gBC3TnD,MAACC,EAAcC,GAEhB,GAAGA,KADWC,KAAKC,MAAsB,IAAhBD,KAAKE,YCKlC,MAAMC,UAAeC,EAAAA,cACxB,WAAAC,CAAY/B,GACRgC,MAAMhC,GACNiC,KAAKC,GAAKV,EAAW,UACrBS,KAAKE,WAAa,KAClBF,KAAKG,MAAQ,CACTC,WAAW,EAElB,CACD,iBAAAC,GACI,MAAMC,eAAEA,GAAmBN,KAAKjC,MAChCiC,KAAKE,WAAaK,SAAStC,cAAc,OACzC+B,KAAKE,WAAWM,aAAa,KAAM,UAAUR,KAAKC,MAClDD,KAAKE,WAAWO,MAAMC,QAAU,uCAC5BJ,EACAA,SAAgEA,EAAeK,YAAYX,KAAKE,YAGhGK,SAAShF,KAAKoF,YAAYX,KAAKE,YAEnCF,KAAKY,SAAS,CAAER,WAAW,GAC9B,CACD,oBAAAS,GACI,GAAIb,KAAKE,WAAY,CACjB,MAAMI,eAAEA,GAAmBN,KAAKjC,MAC5BuC,EACAA,EAAeQ,YAAYd,KAAKE,YAGhCK,SAAShF,KAAKuF,YAAYd,KAAKE,WAEtC,CACJ,CACD,MAAAa,GACI,MAAMC,SAAEA,GAAahB,KAAKjC,OACpBqC,UAAEA,GAAcJ,KAAKG,MAC3B,OAAOH,KAAKE,YAAcE,EAAYa,EAAAA,aAAaD,EAAUhB,KAAKE,YAAc,IACnF,EC1CE,MAAMgB,EAAgBrL,EAAMC,QAACqL,OAAOnL,WAAW,CAAEC,YAAa,qBAAsBC,YAAa,eAAiB,WAAW,EAAGkL,YAAaA,EAAS,2DAChJC,EAAWxL,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,eAAiB,wDAAwD,EAAGkL,YAAaA,KCFvKE,EAAmBC,GAAUA,EAAMC,OAAOC,SAASC,KAAK,KCGxDC,EAAYC,IACrB,MACMC,EAASD,EAAIE,QADI,oCACoB,CAACC,EAAGC,EAAGC,EAAGC,IAAMF,EAAIA,EAAIC,EAAIA,EAAIC,EAAIA,IACzEC,EAAS,4CAA4CC,KAAKP,GAChE,OAAOM,EACD,CACEH,EAAGK,SAASF,EAAO,GAAI,IACvBF,EAAGI,SAASF,EAAO,GAAI,IACvBD,EAAGG,SAASF,EAAO,GAAI,KAEzB,IAAI,EAMDG,EAAoB,CAACV,EAAKW,KACnC,MAAMC,EAAMb,EAASC,GACrB,OAAKY,EAEE,QAAQA,EAAIR,MAAMQ,EAAIP,MAAMO,EAAIN,MAAMK,KADlCX,CAC4C,ECtB9Ca,EAAiB,CAACC,EAAKC,EAASC,GAAmB,KA4BrD,CACHC,cAbmBC,IACdJ,IAGa,WAAdI,EAAMC,IACNJ,IAGMC,GAAkC,QAAdE,EAAMC,KAvBhB,CAACD,IACrB,MAAME,EAAoBN,EAAIO,iBAHX,sKAIbC,EAAeF,EAAkB,GACjCG,EAAcH,EAAkBA,EAAkB5D,OAAS,GAE7D0D,EAAMM,UAAY7C,SAAS8C,gBAAkBH,GAC7CJ,EAAMQ,iBACNH,EAAYI,SAGNT,EAAMM,UAAY7C,SAAS8C,gBAAkBF,IACnDL,EAAMQ,iBACNJ,EAAaK,QAChB,EAWGC,CAAgBV,GACnB,IChBIW,EAAWC,IACpB,IAAMzD,GAAI0D,EAAQ3C,SAAEA,EAAQI,OAAEA,EAAS5E,EAAMC,OAAOC,MAAKkH,UAAEA,EAAY,SAAQC,cAAEA,EAAavD,eAAEA,EAAcwD,cAAEA,EAAarD,MAAEA,EAAKmC,iBAAEA,GAAqBc,EAAIK,EAAcrF,EAAOgF,EAAI,CAAC,KAAM,WAAY,SAAU,YAAa,gBAAiB,iBAAkB,gBAAiB,QAAS,qBAE/R,MAAOM,EAAeC,GAAoBC,EAAQA,SAAC,OAC7CC,OAAEA,EAAMC,WAAEA,EAAUC,OAAEA,GAAWC,YAAUT,EAAeG,EAAe,CAAEJ,cAE3E3D,EAAKsE,EAAOA,SAAC,IAAMZ,GAAYpE,EAAW,YAAY,CAACoE,ICT9B,GAAGE,gBAAeW,gBACjDC,EAAAA,WAAU,KACN,GAAKZ,EAAL,CAGA,IACIA,EAAcrD,aAAa,gBAAiB,OAC/C,CACD,MAAOkE,GACHC,QAAQC,KAAK,6DAChB,CAED,IACSf,EAAcgB,aAAa,kBAC5BhB,EAAcrD,aAAa,gBAAiBgE,EAEnD,CACD,MAAOE,GACHC,QAAQC,KAAK,+CAA+CJ,IAC/D,CAED,IACSX,EAAcgB,aAAa,kBAC5BhB,EAAcrD,aAAa,gBAAiB,SAEnD,CACD,MAAOkE,GACHC,QAAQC,KAAK,+CAA+CJ,IAC/D,CAED,MAAO,KACH,IACIX,EAAcrD,aAAa,gBAAiB,QAC/C,CACD,MAAOkE,GACHC,QAAQC,KAAK,8DAChB,EAjCM,CAkCV,GACF,CAACf,EAAeW,GAAW,ED3B9BM,CAAoB,CAAEjB,gBAAeW,UAAWvE,IAChD,MAAM0C,EAAU,KACZkB,SAA8DA,EAAcN,QAC5EO,SAA8DA,GAAe,GAE3EjB,cAAEA,GAAkBJ,EAAeuB,EAAerB,EAASC,GAoBjE,OAhBA6B,EAAAA,WAAU,KACN,IAAKJ,IAAWL,EACZ,OACJ,MAAMe,EAAiB,IAAIC,UAAeX,GAE1C,OADAU,EAAeE,QAAQjB,GAChB,IAAMe,EAAeG,YAAY,GACzC,CAACb,EAAQL,IAIZS,EAAAA,WAAU,KACN,GAAKJ,EAGL,OADAc,OAAOC,iBAAiB,SAAUf,GAC3B,IAAMc,OAAOE,oBAAoB,SAAUhB,EAAO,GAC1D,CAACA,IACIrG,EAAKlI,QAACmI,cAAc2B,EAAQ,CAAEU,eAAgBA,GAClDtC,EAAKlI,QAACmI,cAAcoD,EAAU,CAAEiE,QAAS3C,EAASvB,OAAQA,IAC1DpD,EAAAA,QAAMC,cAAciD,EAAe5G,OAAOC,OAAO,CAAEgL,MAAM,EAAMnE,OAAQA,EAAQsB,IAAKuB,EAAkBxD,MAAOnG,OAAOC,OAAOD,OAAOC,OAAO,CAAA,EAAI4J,EAAOqB,QAAS/E,GAAQgF,UAAW5C,GAAiBuB,EAAWoB,OAAQzB,GAAc/C,GAAY,EE7CzO0E,GAAW,EAAGC,QAAOrH,SAAQsH,YAAW7K,QAAO8K,WAAa7H,EAAAA,QAAMC,cAAc,MAAO,CAAE0H,MAAOA,EAAOrH,OAAQA,EAAQsH,UAAWA,EAAW1H,QAAS,YAAaE,MAAO,6BAA8B,aAAcyH,GAC/N7H,UAAMC,cAAc,OAAQ,KACxBD,EAAAA,QAAMC,cAAc,iBAAkB,CAAE6H,GAAI,SAAUC,GAAI,KAAMC,GAAI,UAAWC,GAAI,UAAWhG,GAAI,KAC9FjC,UAAMC,cAAc,OAAQ,CAAEiI,UAAWnL,EAAOoL,YAAa,IAAKC,OAAQ,OAC1EpI,UAAMC,cAAc,OAAQ,CAAEiI,UAAWnL,EAAOoL,YAAa,OAAQC,OAAQ,YAC7EpI,UAAMC,cAAc,OAAQ,CAAEiI,UAAWnL,EAAOqL,OAAQ,WAChEpI,EAAKlI,QAACmI,cAAc,IAAK,CAAEE,KAAM,OAAQI,SAAU,WAC/CP,EAAAA,QAAMC,cAAc,IAAK,CAAEoI,UAAW,kBAClCrI,EAAAA,QAAMC,cAAc,OAAQ,CAAEQ,EAAG,8BAA+BwB,GAAI,SAAUqG,OAAQvL,EAAOwL,YAAa,KACtGvI,EAAKlI,QAACmI,cAAc,mBAAoB,CAAEuI,cAAe,YAAaC,KAAM,SAAUC,KAAM,UAAWC,GAAI,YAAaC,IAAK,OAAQC,YAAa,gBACtJ7I,EAAAA,QAAMC,cAAc,SAAU,CAAEE,KAAM,OAAQ2I,GAAI,KAAMC,GAAI,KAAM/E,EAAG,KACjEhE,UAAMC,cAAc,mBAAoB,CAAEuI,cAAe,YAAaC,KAAM,SAAUC,KAAM,UAAWC,GAAI,YAAaC,IAAK,OAAQC,YAAa,mBCXrJG,GAAO,EAAGrB,QAAOrH,SAAQsH,YAAW7K,QAAO8K,WAAa7H,EAAAA,QAAMC,cAAc,MAAO,CAAE0H,MAAOA,EAAOrH,OAAQA,EAAQsH,UAAWA,EAAW1H,QAAS,cAAeC,KAAMpD,EAAO,aAAc8K,GACrM7H,UAAMC,cAAc,SAAU,CAAE6I,GAAI,OAAQC,GAAI,OAAQ/E,EAAG,QACvDhE,EAAKlI,QAACmI,cAAc,UAAW,CAAEuI,cAAe,eAAgBS,MAAO,KAAML,IAAK,KAAMM,OAAQ,SAAUC,SAAU,SAAUN,YAAa,gBAC/I7I,UAAMC,cAAc,SAAU,CAAE6I,GAAI,OAAQC,GAAI,OAAQ/E,EAAG,QACvDhE,EAAKlI,QAACmI,cAAc,UAAW,CAAEuI,cAAe,eAAgBS,MAAO,QAASL,IAAK,KAAMM,OAAQ,SAAUC,SAAU,SAAUN,YAAa,gBAClJ7I,UAAMC,cAAc,SAAU,CAAE6I,GAAI,OAAQC,GAAI,OAAQ/E,EAAG,QACvDhE,EAAKlI,QAACmI,cAAc,UAAW,CAAEuI,cAAe,eAAgBS,MAAO,QAASL,IAAK,KAAMM,OAAQ,SAAUC,SAAU,SAAUN,YAAa,gBAClJ7I,UAAMC,cAAc,SAAU,CAAE6I,GAAI,OAAQC,GAAI,OAAQ/E,EAAG,QACvDhE,EAAKlI,QAACmI,cAAc,UAAW,CAAEuI,cAAe,eAAgBS,MAAO,QAASL,IAAK,KAAMM,OAAQ,SAAUC,SAAU,SAAUN,YAAa,gBAClJ7I,UAAMC,cAAc,SAAU,CAAE6I,GAAI,OAAQC,GAAI,OAAQ/E,EAAG,QACvDhE,EAAKlI,QAACmI,cAAc,UAAW,CAAEuI,cAAe,eAAgBS,MAAO,QAASL,IAAK,KAAMM,OAAQ,SAAUC,SAAU,SAAUN,YAAa,gBAClJ7I,UAAMC,cAAc,SAAU,CAAE6I,GAAI,OAAQC,GAAI,OAAQ/E,EAAG,QACvDhE,EAAKlI,QAACmI,cAAc,UAAW,CAAEuI,cAAe,eAAgBS,MAAO,QAASL,IAAK,KAAMM,OAAQ,SAAUC,SAAU,SAAUN,YAAa,gBAClJ7I,UAAMC,cAAc,SAAU,CAAE6I,GAAI,OAAQC,GAAI,OAAQ/E,EAAG,QACvDhE,EAAKlI,QAACmI,cAAc,UAAW,CAAEuI,cAAe,eAAgBS,MAAO,QAASL,IAAK,KAAMM,OAAQ,SAAUC,SAAU,SAAUN,YAAa,gBAClJ7I,UAAMC,cAAc,SAAU,CAAE6I,GAAI,OAAQC,GAAI,OAAQ/E,EAAG,QACvDhE,EAAKlI,QAACmI,cAAc,UAAW,CAAEuI,cAAe,eAAgBS,MAAO,QAASL,IAAK,KAAMM,OAAQ,SAAUC,SAAU,SAAUN,YAAa,gBAClJ7I,UAAMC,cAAc,SAAU,CAAE6I,GAAI,OAAQC,GAAI,OAAQ/E,EAAG,QACvDhE,EAAKlI,QAACmI,cAAc,UAAW,CAAEuI,cAAe,eAAgBS,MAAO,QAASL,IAAK,KAAMM,OAAQ,SAAUC,SAAU,SAAUN,YAAa,iBClBzIO,GAAY,EAAGzB,QAAOrH,SAAQsH,YAAW7K,QAAO8K,WAAa7H,EAAKlI,QAACmI,cAAc,MAAO,CAAE0H,MAAOA,EAAOrH,OAAQA,EAAQsH,UAAWA,EAAW1H,QAAS,aAAcE,MAAO,6BAA8BD,KAAMpD,EAAO,aAAc8K,GAC9O7H,UAAMC,cAAc,SAAU,CAAE6I,GAAI,KAAMC,GAAI,KAAM/E,EAAG,MACnDhE,UAAMC,cAAc,UAAW,CAAEuI,cAAe,IAAKE,KAAM,KAAMC,GAAI,KAAMM,MAAO,KAAML,IAAK,OAAQM,OAAQ,UAAWC,SAAU,SAAUN,YAAa,eACzJ7I,UAAMC,cAAc,UAAW,CAAEuI,cAAe,cAAeE,KAAM,IAAKC,GAAI,IAAKM,MAAO,KAAML,IAAK,OAAQM,OAAQ,SAAUC,SAAU,SAAUN,YAAa,gBACpK7I,EAAKlI,QAACmI,cAAc,SAAU,CAAE6I,GAAI,KAAMC,GAAI,KAAM/E,EAAG,IAAKwE,cAAe,cAAeE,KAAM,IAAKC,GAAI,OACrG3I,UAAMC,cAAc,UAAW,CAAEuI,cAAe,IAAKE,KAAM,IAAKC,GAAI,IAAKM,MAAO,KAAML,IAAK,OAAQM,OAAQ,SAAUC,SAAU,SAAUN,YAAa,eACtJ7I,UAAMC,cAAc,UAAW,CAAEuI,cAAe,cAAeE,KAAM,MAAOC,GAAI,MAAOM,MAAO,KAAML,IAAK,OAAQM,OAAQ,UAAWC,SAAU,SAAUN,YAAa,gBACzK7I,UAAMC,cAAc,SAAU,CAAE6I,GAAI,MAAOC,GAAI,KAAM/E,EAAG,MACpDhE,UAAMC,cAAc,UAAW,CAAEuI,cAAe,IAAKE,KAAM,KAAMC,GAAI,KAAMM,MAAO,KAAML,IAAK,OAAQM,OAAQ,UAAWC,SAAU,SAAUN,YAAa,eACzJ7I,UAAMC,cAAc,UAAW,CAAEuI,cAAe,cAAeE,KAAM,IAAKC,GAAI,IAAKM,MAAO,KAAML,IAAK,OAAQM,OAAQ,SAAUC,SAAU,SAAUN,YAAa,iBCN3JQ,GAAS,EAAGzB,YAAWtH,SAAS,GAAIqH,QAAQ,GAAI5K,QAAQ,UAAW0L,OAAO,eACnF,OAAQA,GACJ,IAAK,OACD,OAAOzI,EAAKlI,QAACmI,cAAc+I,GAAM,CAAEpB,UAAWA,EAAWtH,OAAQA,EAAQqH,MAAOA,EAAO5K,MAAOA,IAElG,IAAK,YACD,OAAOiD,EAAKlI,QAACmI,cAAcmJ,GAAW,CAAExB,UAAWA,EAAWtH,OAAQA,EAAQqH,MAAOA,EAAO5K,MAAOA,IAGvG,QACI,OAAOiD,EAAKlI,QAACmI,cAAcyH,GAAU,CAAEE,UAAWA,EAAWtH,OAAQA,EAAQqH,MAAOA,EAAO5K,MAAOA,IAEzG,ECbQuM,GAAczR,EAAMC,QAACiH,KAAK/G,WAAW,CAAEC,YAAa,mBAAoBC,YAAa,eAAiB,8CAA8C,EAAGqR,aAAeA,EAAU,MAAQ,SAAU,EAAGC,aAAcA,GAAW,2BAA2B,EAAGC,UAAW7N,EAAM6N,aAAgB,EAAGA,UAAW7N,EAAM6N,OACxTC,GAAa7R,EAAMC,QAACa,OAAOX,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,gBAAkB,4IAA4IsG,EAAM/B,+FAAgGsD,IAC3V,IAAIO,EAAS,OACTqJ,EAAc,OACdC,EAAe,OACfC,EAAe,MACfhN,EAAW,OACXiN,EAAe,MAyBnB,OAxBI/J,EAAMgK,UACNJ,EAAc,QAEd5J,EAAMiK,cACNJ,EAAe,QAEA,OAAf7J,EAAM0J,OACNnJ,EAAS,OACTqJ,EAAc,OACdC,EAAe,OACfC,EAAe,MACfhN,EAAW,OACXiN,EAAe,MACX/J,EAAMgK,UACNJ,EAAc,OAEd5J,EAAMiK,cACNJ,EAAe,QAGlB7J,EAAMwJ,UACPI,EAAc,MACdC,EAAe,OAEZ,4BACcE,uBAETxJ,2BACMqJ,4BACCC,4BACAC,wBACJhN,UACd,0HAEQoN,GAAgBpS,EAAAA,QAAO6R,IAAY1R,WAAW,CAAEC,YAAa,qBAAsBC,YAAa,gBAAkB,gBAAgBsG,EAAMxF,OAAOS,QAAQE,KAAKL,iFAAiF,EAAGiQ,aAAcA,EAAU/K,EAAMxF,OAAOS,QAAQC,IAAIL,KAAOmF,EAAMxF,OAAOa,UAAUX,KAAKG,iCAAiCmF,EAAMxF,OAAOS,QAAQE,KAAKR,uCAAuCqF,EAAMxF,OAAOS,QAAQE,KAAKR,yBAAyBqF,EAAMxF,OAAOa,UAAUX,KAAKG,6CAA6CmF,EAAMxF,OAAOa,UAAUX,KAAKE,+DAA+DoF,EAAMxF,OAAOa,UAAUX,KAAKE,2EAA2EoF,EAAMxF,OAAOS,QAAQE,KAAKN,gCAAgCmF,EAAMxF,OAAOS,QAAQE,KAAKN,yBAAyBmF,EAAMxF,OAAOS,QAAQC,IAAIN,qBAC12B8Q,GAA2BrS,EAAMC,QAACmS,IAAejS,WAAW,CAAEC,YAAa,gCAAiCC,YAAa,gBAAkB,SAASsG,EAAMxF,OAAOa,UAAUC,IAAIT,sBAAsBmF,EAAMxF,OAAOa,UAAUC,IAAIR,+BAA+BkF,EAAMxF,OAAOa,UAAUC,IAAIT,6CAA6CmF,EAAMxF,OAAOa,UAAUC,IAAIV,eAAeoF,EAAMxF,OAAOa,UAAUC,IAAIR,8DAA8DkF,EAAMxF,OAAOa,UAAUC,IAAIV,UACre+Q,GAAgBtS,EAAAA,QAAOoS,IAAejS,WAAW,CAAEC,YAAa,qBAAsBC,YAAa,eAAiB,oBAAoBsG,EAAMxF,OAAOa,UAAUX,KAAKG,qBAAqBmF,EAAMxF,OAAOa,UAAUX,KAAKG,6CAA6CmF,EAAMxF,OAAOa,UAAUX,KAAKI,qBAAqBkF,EAAMxF,OAAOa,UAAUX,KAAKI,mCAAmCkF,EAAMxF,OAAOa,UAAUX,KAAKI,qBAAqBkF,EAAMxF,OAAOa,UAAUX,KAAKI,6CAA6CkF,EAAMxF,OAAOa,UAAUX,KAAKE,+DAA+DoF,EAAMxF,OAAOa,UAAUX,KAAKE,UACnmBgR,GAA2BvS,EAAAA,QAAOsS,IAAenS,WAAW,CAAEC,YAAa,gCAAiCC,YAAa,eAAiB,oBAAoBsG,EAAMxF,OAAOa,UAAUC,IAAIT,qBAAqBmF,EAAMxF,OAAOa,UAAUC,IAAIT,6CAA6CmF,EAAMxF,OAAOa,UAAUC,IAAIR,qBAAqBkF,EAAMxF,OAAOa,UAAUC,IAAIR,mCAAmCkF,EAAMxF,OAAOa,UAAUC,IAAIR,qBAAqBkF,EAAMxF,OAAOa,UAAUC,IAAIR,6CAA6CkF,EAAMxF,OAAOa,UAAUC,IAAIV,+DAA+DoF,EAAMxF,OAAOa,UAAUC,IAAIV,UACjnBiR,GAAaxS,EAAMC,QAAC4R,IAAY1R,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,gBAAkB,kDAAkDsG,EAAMxF,OAAOS,QAAQC,IAAIL,wJAAwJmF,EAAMxF,OAAOa,UAAUX,KAAKE,sFAC3WkR,GAAiBzS,EAAMC,QAACa,OAAOX,WAAW,CAAEC,YAAa,sBAAuBC,YAAa,eAAiB,wGAC9GqS,GAAa1S,EAAMC,QAACwS,IAAgBtS,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,eAAiB,yEAAyEsG,EAAM9B,KAAKoB,KAAKrB,wBAAwB+B,EAAM9B,KAAKoB,KAAKjB,wBAAwB2B,EAAM9B,KAAKoB,KAAKlB,0BAA0B4B,EAAM9B,KAAKoB,KAAKhB,8BAA8B0B,EAAM9B,KAAKoB,KAAKd,wBAAwBwB,EAAMxF,OAAOa,UAAUX,KAAKG,sBAAsBmF,EAAMxF,OAAOa,UAAUX,KAAKI,+BAA+BkF,EAAM5C,MAAMO,4CACjgBqO,GAAiB3S,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,sBAAuBC,YAAa,eAAiB,wHCnD3GuS,GAAgB1K,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GAC1JC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,oBAAqBN,KAAM,kBCGpGuK,GAAa,CACf5S,QAASmS,GACTU,QAASR,GACTS,YAAaV,GACbW,mBAAoBT,GACpBU,KAAMT,GACNvM,KAAMyM,GACNQ,SAAUT,IAEDU,GAASC,EAAUA,YAAC,CAACvF,EAAIhB,KAClC,IAAIkD,UAAEA,EAAS5E,SAAEA,EAAQkI,KAAEA,EAAInS,QAAEA,EAAU,UAAS0Q,KAAEA,EAAO,OAAM0B,SAAEA,GAAW,EAAK3B,QAAEA,GAAU,GAAU9D,EAAI0F,EAAa1K,EAAOgF,EAAI,CAAC,YAAa,WAAY,OAAQ,UAAW,OAAQ,WAAY,YACxM,GAAgB,aAAZ3M,EACA,OAAQiH,EAAKlI,QAACmI,cAAcqK,GAAgBhO,OAAOC,OAAO,CAAEmI,IAAKA,EAAKkD,UAAWA,GAAawD,GAAapI,GAE/G,MAAMqI,EAAgBX,GAAW3R,GAC3BuS,OAA2BC,IAAbvI,EACd+G,IAAYmB,EAClB,OAAQlL,EAAKlI,QAACmI,cAAcoL,EAAe/O,OAAOC,OAAO,CAAEmI,IAAKA,EAAKkD,UAAWA,EAAW6B,KAAMA,EAAMF,QAAS+B,EAAavB,QAASA,EAASC,YAAamB,GAAYC,IACnKE,GAAevB,IAAa/J,EAAKlI,QAACmI,cAAcqJ,GAAa,CAAEE,QAASA,EAASD,UAAWvG,EAAUyG,KAAMzG,GAAqB,OAATyG,EAAgB,OAAS,MAC9IyB,GAAQA,OACKK,IAAbvI,GAA0BhD,EAAKlI,QAACmI,cAAc,OAAQ,KAAM+C,GAC5DmI,GAAYnL,EAAAA,QAAMC,cAAcwK,GAAc,OAClDjB,GAAYxJ,EAAKlI,QAACmI,cAAcuK,GAAgB,KAC5CxK,EAAAA,QAAMC,cAAcoJ,GAAQ,OAAU,IC1BrCmC,GAAS3T,EAAAA,QAAO4T,OAAOzT,WAAW,CAAEC,YAAa,cAAeC,YAAa,gBAAkB,eAAe0D,EAAMT,oBAAoBS,EAAMT,mBAAmBS,EAAMT,oBAAoBS,EAAMT,2BAA2BS,EAAMO,OAClOuP,GAAa7T,EAAAA,QAAOE,IAAIC,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,gBAAkB,KAAK0D,EAAMvC,4FCD/GsS,GAAiB5L,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,6BAA8BC,KAAM,eAAgBC,OAAQ1E,EAAMT,IAAM4E,GACnMC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,iHAAkHN,KAAM,kBCF1LyL,GAAa7L,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,6BAA8BC,KAAM,eAAgBC,OAAQ,GAAIqH,MAAO,IAAM5H,GACpMC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,uJAAwJN,KAAM,kBCKhO0L,GAAa,EAAG5J,KAAI6J,QAAOC,WAAUC,gBAAgB,eAAgBC,SAAQC,aAAYC,cAAaC,kBAAiBC,kBAAqBrM,EAAAA,QAAMC,cAAcuL,GAAQ,KACjLxL,UAAMC,cAAcyL,GAAY,KAC5B1L,UAAMC,cAAcnB,EAAM,CAAEmD,GAAIA,EAAIlJ,QAASiT,GAAiBF,GAC9DG,GAAWjM,EAAAA,QAAMC,cAAc+K,GAAQ,CAAEjS,QAAS,OAAQuO,QAAS2E,EAAO3E,SAAW2E,EAAOH,OAC5FI,EACAE,GAAoBpM,EAAAA,QAAMC,cAAc+K,GAAQ,CAAEjS,QAAS,OAAQmS,KAAMiB,EAAcnM,UAAMC,cAAc0L,GAAe,MAAQ3L,EAAKlI,QAACmI,cAAcH,EAAa,MAAOwH,QAAS8E,IACnLC,GAAiBrM,EAAKlI,QAACmI,cAAc+K,GAAQ,CAAEjS,QAAS,OAAQmS,KAAMlL,EAAKlI,QAACmI,cAAc2L,GAAW,MAAOtE,QAAS+E,EAAc,aAAc,WACrJN,GAAY/L,EAAAA,QAAMC,cAAcnB,EAAM,CAAE/F,QAAS,mBAAqBgT,UCPlEpS,IAASX,EAAOS,QAClB6S,GAAqB,CACvB,EAAG,OACH,EAAGhR,EAAQJ,GACX,EAAGI,EAAQjC,KACX,EAAGiC,EAAQH,GACX,EAAGG,EAAQF,IAETmR,GAAU,CACZC,KAAMxT,EAAOa,UAAUX,KAAKG,KAC5BoT,QAASzT,EAAOa,UAAUG,MAAMX,KAChCgF,MAAOrF,EAAOa,UAAUC,IAAIT,MAEnBqT,GAAS7U,EAAMC,QAAC6U,OAAO3U,WAAW,CAAEC,YAAa,cAAeC,YAAa,gBAAkB,cAAc0D,EAAMvC,gBAAgBuC,EAAMT,gBACzIyR,GAAU/U,EAAMC,QAAC+U,QAAQ7U,WAAW,CAAEC,YAAa,eAAgBC,YAAa,eAAiB,iBAAiB0D,EAAMT,mBAAmBS,EAAMT,iBAAiBS,EAAMT,oBAAoBS,EAAMT,kBAAkBuB,EAAKa,KAAKd,wBAAwBC,EAAKa,KAAKV,wBAAwBH,EAAKa,KAAKX,0BAA0BF,EAAKa,KAAKT,oBAAoBJ,EAAKa,KAAKR,0BAA0BnB,EAAMM,cAAcvC,GAAKN,oBAAoBuC,EAAMT,OACjb2R,GAAYjV,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,gBAAgB0D,EAAMT,oBAAoBS,EAAMT,MACjJ4R,GAAOlV,EAAMC,QAAC6H,EAAMA,OAAC5H,KAAKC,WAAW,CAAEC,YAAa,YAAaC,YAAa,gBAAkB,0CAA0C0U,gCAC1II,GAAUnV,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,eAAgBC,YAAa,eAAiB,8DAA8D0D,EAAMM,cAAcvC,GAAKN,mBAAoB0G,QAA8BwL,IAApBxL,EAAMkN,UAA0BX,GAAmBvM,EAAMkN,WAAa3R,EAAQJ,oBAAoBD,EAAOE,4CAA4C,EAAG+R,YAAaA,GAChY,kIAOYtR,EAAMO,gCACIoQ,GAAQW,mBC9B5BC,GAA4B,CAC9BC,SAAU,CAAE9M,OAAQ,QACpB+M,UAAW,CAAE/M,OAAQ,IAEZgN,GAAO,EAAG1F,YAAWnF,QAAOqJ,QAAOC,WAAUwB,mBAAkBtB,SAAQuB,cAAaP,YAAWC,SAAQlK,WAAU2B,UAAS8I,mBACnI,MAAOtB,EAAauB,GAAkBxH,EAAQA,UAAC,GAIzCyH,EAAe7B,GAAU9L,EAAKlI,QAACmI,cAAc4L,GAAY,CAAEC,MAAOA,EAAOC,SAAUA,EAAUG,WAAYqB,EAAkBtB,OAAQA,EAAQI,aAAc1H,EAASwH,YAAaA,EAAaC,gBAAiBoB,EAH3L,KACpBE,GAAgBvB,EAAY,OAEmNZ,IAC7OqC,EAAYJ,IAAgBrB,IAAiBqB,EAC7CK,EAAc7N,EAAAA,QAAMC,cAAc8M,GAAM,CAAEe,QAASF,EAAW,WAAa,YAAaG,SAAUZ,GAA2Ba,WAAY,CAAEC,SAAU,GAAKC,KAAM,YAClKlO,EAAKlI,QAACmI,cAAc2M,GAAS,KAAM5J,IACjCmL,OAAgC5C,IAAjBkC,GAA8BzN,EAAKlI,QAACmI,cAAcyM,GAAQ,KAAMe,KACrF,OAAQzN,UAAMC,cAAc+M,GAAS,CAAEpF,UAAWA,EAAWnF,MAAOA,EAAOwK,UAAWA,EAAWC,OAAQA,GACrGS,EACAE,EACAM,EAAe,EAEvBb,GAAKN,QAAUA,GACfM,GAAKV,QAAUA,GACfU,GAAKR,UAAYA,GACjBQ,GAAKZ,OAASA,GCpBd,MAAM9Q,MAAEA,GAAO5C,OAAAA,QAAQ0D,IAAS8B,EACnB4P,GAAWvW,EAAMC,QAACwV,GAAKN,SAAShV,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,gBAAkB,2BAA2B0D,GAAMvC,6CAC3IuT,GAAU/U,EAAMC,QAAC+U,QAAQ7U,WAAW,CAAEC,YAAa,eAAgBC,YAAa,eAAiB,iEAAiEc,GAAOS,QAAQE,KAAKN,mBAAmBuC,GAAMvC,oBAAoBuC,GAAMvC,SACzOgV,GAAiBxW,EAAMC,QAACgH,GAAME,MAAM,CAAEjG,QAAS,oBAAqBf,WAAW,CAAEC,YAAa,sBAAuBC,YAAa,eAAiB,UAAU0D,GAAMV,MAAMU,GAAMvC,QAAQuC,GAAMV,MAC7LoT,GAAOzW,EAAMC,QAACkT,IAAQhM,MAAM,CAAEjG,QAAS,aAAcf,WAAW,CAAEC,YAAa,YAAaC,YAAa,gBAAkB,oCAAoC0D,GAAMR,cAAcQ,GAAMO,MAAMP,GAAMvC,uEAAuEqD,GAAKa,KAAKd,wBAAwBC,GAAKa,KAAKV,wBAAwBH,GAAKa,KAAKX,uCAAuC5D,GAAOS,QAAQE,KAAKP,eAAeJ,GAAOa,UAAUX,KAAKG,+BAA+BuC,GAAM,OCLte2S,GAAU,CACZC,KAAMF,GACNrC,ODIsBpU,EAAMC,QAACwW,IAAMtW,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,gBAAkB,SAASc,GAAOa,UAAUX,KAAKG,QCH9IyE,KDIoBjG,EAAMC,QAACwW,IAAMtW,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,eAAiB,SAASc,GAAOa,UAAUX,KAAKG,mCCFhIoV,GAAa,EAAG3C,QAAO4C,QAAQ,GAAIC,WAAUC,gBAAeC,iBACrE,MAAOC,EAAUC,GAAe7I,EAAQA,UAAC,IAClC8I,EAAUC,GAAe/I,EAAQA,SAAC,MAKnCgJ,EAAcV,IAChB,MAAMW,EAAgBZ,GAAQC,EAAKzV,SAAW,QAC9C,OAAQiH,UAAMC,cAAckP,EAAe,CAAE7H,QAAS,KAAM8H,OAN3CC,EAMuDb,EAAKlH,QAL7EyH,GAAY,QACZM,IAFgB,IAACA,CAMoE,EAAEtK,IAAKyJ,EAAK1C,OAC7F0C,EAAKtD,MAAQsD,EAAKtD,KAClBlL,EAAKlI,QAACmI,cAAc,OAAQ,KAAMuO,EAAK1C,OAAS,EAKlDwD,EAAiBX,EAAWA,EAASY,KAHpB1C,GAAa7M,UAAMC,cAAc2M,GAAS,CAAE7H,IAAK8H,EAAQf,OAC5Ee,EAAQf,OAAS9L,UAAMC,cAAcoO,GAAgB,KAAMxB,EAAQf,OACnEe,EAAQ6B,MAAMa,IAAIL,MAC0CR,EAAMa,IAAIL,GAC1E,OAAQlP,UAAMC,cAAcD,EAAKlI,QAAC0X,SAAU,KACxCxP,EAAKlI,QAACmI,cAAc+K,GAAQ,CAAEG,UAAU,EAAMpS,QAAS6V,EAAenF,KAAMoF,EAAYvH,QAAS,IAAMyH,GAAaD,GAAWpK,IAAKuK,GAAenD,GACnJgD,GAAa9O,EAAAA,QAAMC,cAAcwF,EAAS,CAAEI,cAAemJ,EAAUpJ,UAAW,eAAgBE,cAAe,IAAMiJ,GAAY,IAC7H/O,EAAKlI,QAACmI,cAAcmO,GAAU,KAAMkB,IAAoB,EC3BvDG,GAAe5X,EAAMC,QAAC4X,EAAE1X,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,eAAiB,4EAA4EsG,EAAM9B,KAAKoB,KAAKrB,yBAAyB+B,EAAM9B,KAAKoB,KAAKnB,yBAAyB6B,EAAM9B,KAAKoB,KAAKlB,wBAAwB4B,EAAM9B,KAAKoB,KAAKjB,wBAAwB2B,EAAM9B,KAAKoB,KAAKhB,oBAAoB0B,EAAMxF,OAAOa,UAAUX,KAAKG,wBAAwBmF,EAAM9B,KAAKoB,KAAKd,gCAAgCwB,EAAMxF,OAAOa,UAAUX,KAAKI,SCAvfqW,GAAY9X,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,iICA5G0X,GAAgB3E,EAAUA,YAAC,CAAClL,EAAO2E,KAC5C,MAAM1B,SAAEA,EAAQ4E,UAAEA,GAAc7H,EAChC,OAAQC,EAAKlI,QAACmI,cAAc0P,GAAW,CAAE/H,UAAWA,EAAWlD,IAAKA,GAAO1B,EAAW,ICDpF2M,GAAY9X,EAAMC,QAAC+X,GAAgB7X,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,wFAC7G4X,GAAOjY,EAAMC,QAAC+X,GAAgB7X,WAAW,CAAEC,YAAa,YAAaC,YAAa,eAAiB,uGACnG6X,GAAWlY,EAAAA,QAAO+X,IAAe5X,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,eAAiB,qDAAsD6H,GAAWA,EAAMiQ,SAAW,eAAiB,+RCDtMC,GAAmB,EAAGC,MAAKC,qBAAoBnN,WAAU4E,YAAY,oBAAqBoI,YAAW,EAAOI,cAAc,SAAWC,UAAU,IAAKC,uBAAuB,WAAYhJ,UAASiJ,eAAcC,mBACvN,MAAMC,EAAcC,SAAO,MAM3B,MCVwB,EAAChM,EAAK0L,KAC9B3J,EAAAA,WAAU,KACN,MAAMkK,EAAmB7L,IACjBJ,EAAIkM,UAAYlM,EAAIkM,QAAQC,SAAS/L,EAAMgM,SAC3CV,EAAYtL,EACf,EAGL,OADAvC,SAAS6E,iBAAiB,YAAauJ,GAChC,KACHpO,SAAS8E,oBAAoB,YAAasJ,EAAgB,CAC7D,GACF,CAACjM,EAAK0L,GAAa,EDNtBW,CAAaN,GAAc3L,IACnBqL,GACAC,EAAYtL,EACf,IAEG9E,EAAAA,QAAMC,cAAc0P,GAAW,CAAE/H,UAAW,GAAGA,eAAuBA,IAAaN,QAASA,EAASiJ,aAAcA,EAAcC,aAAcA,EAAc9L,IAAK+L,IACrKT,GAAYE,EACblQ,UAAMC,cAAc6P,GAAM,CAAElI,UAAW,GAAGA,UAAkBA,KACxD5H,EAAAA,QAAMC,cAAc+Q,gBAAe,CAAEC,GAAId,EAAoBE,QAASA,EAASa,WAAYZ,EAAsBa,eAAe,GAC5HnR,EAAAA,QAAMC,cAAc8P,GAAU,CAAEC,SAAUA,EAAUpI,UAAW,GAAGA,oBAA4BA,KAAe5E,KACrHgN,GAAYE,EAAM,EEdbkB,GAAWvZ,EAAAA,QAAOE,IAAIC,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,eAAiB,SAAU6H,GAAUA,EAAM4H,gBAAiB5H,GAAUA,EAAM4H,0BAA0BnJ,EAAMxF,OAAOS,QAAQE,KAAKN,cAAe0G,GAAUA,EAAMsR,8BAA+BtR,GAAUA,EAAMuR,0IAA0I9S,EAAM9B,KAAKiB,cAAclB,0BAA0B+B,EAAM9B,KAAKiB,cAAcf,wBAAwB4B,EAAM9B,KAAKiB,cAAcd,wBAAwB2B,EAAM9B,KAAKiB,cAAcb,eCF1lB,IAAIyU,GAKAC,IAJX,SAAWD,GACPA,EAAc,IAAI,MAClBA,EAAgB,MAAI,OACvB,CAHD,CAGGA,KAAaA,GAAW,CAAE,IAE7B,SAAWC,GACPA,EAAc,OAAI,SAClBA,EAAW,IAAI,KAClB,CAHD,CAGGA,KAAUA,GAAQ,CAAA,ICNrB,MAAM7B,GAAY9X,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,gBAAkB,wBAClGuZ,GAAY5Z,EAAMC,QAAC6X,IAAW3X,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,GACxGwZ,GAAc7Z,EAAMC,QAACgH,GAAM9G,WAAW,CAAEC,YAAa,mBAAoBC,YAAa,gBAAkB,SAASsG,EAAMxF,OAAOS,QAAQE,KAAKR,yEAC3IwY,GAAW9Z,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,gBAAkB,qGAChG0Z,GAAM/Z,EAAAA,QAAOE,IAAIC,WAAW,CAAEC,YAAa,WAAYC,YAAa,gBAAkB,cAAc,EAAG+V,cAAe,WAAWA,8ZACjI6B,GAAOjY,EAAAA,QAAO8X,IAAW3X,WAAW,CAAEC,YAAa,YAAaC,YAAa,gBAAkB,sKAAsK,EAAG2Z,iBAAkBA,iBAA2B,EAAGC,iBAAkBA,OCF1UC,GAAgB,CAClB9D,SAAU,IACV+D,KAAMR,GAAMS,IACZC,eAAgB,EAChBL,YAAa,GACbC,YAAa,KAEJK,GAAU,EAAGnP,WAAUtG,OAAM0V,UAASC,SAAQrC,YAAW,EAAOpI,YAAW0K,eAAcC,qBAAoB,EAAOC,kBAAiB,MAC9I,MAAMjJ,IAAU7M,GAAOA,EAAK+V,OAAOrR,OAAS,EACtCsR,EAAapW,OAAOC,OAAOD,OAAOC,OAAO,GAAIwV,IAAgBM,IAC7DpE,SAAEA,EAAQ+D,KAAEA,EAAIE,eAAEA,EAAcL,YAAEA,EAAWC,YAAEA,GAAgBY,EAC/DxB,EAAa,CACfyB,UAAW/K,GAAa,GAAGA,KAAaA,cACxCgL,IAAKhL,GAAa,GAAGA,QACrBiL,KAAMjL,GAAa,GAAGA,SACtBkL,SAAUlL,GAAa,GAAGA,aAC1BmL,UAAWnL,GAAa,GAAGA,gBAExBoL,EAAYC,GAAiB/M,EAAQA,SAACqM,IACtCW,EAAkBC,GAAuBjN,EAAQA,SAAC,OAClDF,EAAeC,GAAoBC,EAAQA,SAAC,OAC7CC,OAAEA,EAAMC,WAAEA,GAAeE,EAAAA,UAAU4M,EAAkBlN,EAAe,CACtEJ,UAAW,GAAGoM,KAAQhC,EAAW,MAAQ,UACzCoD,UAAW,CACP,CACIC,KAAM,SACNC,QAAS,CACLlL,OAAQ,CAAC,EAAG,SAKtBmL,EAAOC,EAAAA,aAAY,IAAMP,GAAc,IAAO,CAACA,IAC/CQ,EAAOD,EAAAA,aAAY,IAAMP,GAAc,IAAQ,CAACA,IAChDS,EAAgBpX,OAAOC,OAAOD,OAAOC,OAAO,CAAA,EAAI4J,EAAOqB,QAAS,CAAEpE,OAAQ5E,EAAMC,OAAOG,UACvF+U,EAAgBX,IAAeZ,GAAW7I,IAAavJ,EAAKlI,QAACmI,cAAc2R,GAAKtV,OAAOC,OAAO,CAAEqL,UAAWsJ,EAAW0B,IAAKlO,IAAKuB,EAAkBgI,SAAUA,EAAU2F,mBAAoB1B,EAAgBzP,MAAOiR,GAAiBtN,EAAWoB,OAAQ,CAAEnH,KAAM,YAC/PL,UAAMC,cAAc6P,GAAM,CAAElI,UAAWsJ,EAAW2B,KAAMhB,YAAaA,EAAaC,YAAaA,GAAeM,QAAyCA,EAAUpS,UAAMC,cAAcyR,GAAa,KAAMhV,IACxM4V,GAAgBtS,EAAKlI,QAACmI,cAAc0R,GAAU,CAAE1P,GAAI,4BAA6B2F,UAAWsJ,EAAW4B,YAC3G,OAAQ9S,EAAAA,QAAMC,cAAc0P,GAAW,CAAE/H,UAAWsJ,EAAWyB,WAC3DH,EAAiBqB,EAAQ/b,QAACmL,aAAa0Q,EAAepR,SAAShF,MAAQoW,EACvE3T,EAAKlI,QAACmI,cAAcwR,GAAW,CAAE/M,IAAKyO,EAAqBvL,UAAWsJ,EAAW6B,UAAWxC,aAAcgD,EAAM/C,aAAciD,GAAQzQ,GAAY,ECzCpJ8Q,GAAYjc,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,0GAA0GwE,EAAKc,UAAUf,0BAA0BC,EAAKc,UAAUZ,0EAA2EmD,GAAWA,EAAMgU,WAAa,OAAS,oDAAqDnY,EAAMvC,eAAeuC,EAAMvC,SCDhdqR,GAAa,CACf5S,QDCwBD,EAAAA,QAAOic,IAAW9b,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,eAAiB,yCAAyCc,EAAOa,UAAUX,KAAKG,cAAcL,EAAOa,UAAUX,KAAKG,QCA1NsR,QDCwB9S,EAAAA,QAAOic,IAAW9b,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,gBAAkB,gBAAgBc,EAAOa,UAAUX,KAAKG,yBAAyBL,EAAOa,UAAUX,KAAKC,kBAAkBH,EAAOa,UAAUX,KAAKG,QCArP2a,QDCwBnc,EAAAA,QAAOic,IAAW9b,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,eAAiB,gBAAgBc,EAAOa,UAAUE,OAAOV,yBAAyBL,EAAOa,UAAUE,OAAOZ,kBAAkBH,EAAOa,UAAUS,OAAOhB,SEJxP2a,GAAepc,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,eAAiB,mIAAmI,EAAGgc,iBAAkBA,GAC5Q,6EACsEA,+BAChD,EAAGC,qBAAsBA,GAAmB,WAChEC,GAAMvc,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,WAAYC,YAAa,eAAiB,mCAChGmc,GAAMxc,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,WAAYC,YAAa,eAAiB,qEACzFoc,GAAUzc,EAAMC,QAACuc,IAAKrc,WAAW,CAAEC,YAAa,eAAgBC,YAAa,gBAAkB,aAAa0D,EAAMT,aAAaS,EAAMT,YAAY,EAAG+Y,iBAAkBA,MACtKK,GAAiB1c,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,sBAAuBC,YAAa,eAAiB,cAC7Hsc,GAAY3c,EAAMC,QAACuc,IAAKrc,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,gBAAkB,iCACnGuc,GAAa5c,EAAMC,QAACgH,GAAM9G,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,gBAAkB,8BCNtGwc,GAAe,CACjBC,KAAM3b,EAAOa,UAAUX,KAAKG,KAC5BmT,KAAMxT,EAAOS,QAAQC,IAAIL,KACzBgF,MAAOrF,EAAOa,UAAUC,IAAIT,KAC5BoT,QAASzT,EAAOa,UAAUG,MAAMX,MCTvBub,GAAgB/c,EAAAA,QAAOgd,GAAG7c,WAAW,CAAEC,YAAa,qBAAsBC,YAAa,gBAAkB,kFAAkFwE,EAAKa,KAAKd,0BAA0BC,EAAKa,KAAKX,wBAAwBF,EAAKa,KAAKV,wBAAwBH,EAAKa,KAAKT,cAC7SgY,GAAejd,EAAMC,QAACid,GAAG/c,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,gBAAkB,qPCFvG8c,GAAkBjV,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GAC5JC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,sFAAuFN,KAAM,kBCA/J8U,GAAa,EAAGjS,WAAU8I,QAAOoJ,gBAAeC,UACrDD,EACQlV,EAAKlI,QAACmI,cAAc6U,GAAc,CAAElN,UAAW,cACnD5H,EAAKlI,QAACmI,cAAciV,EAAe,CAAEC,KAAMA,GAAQrJ,GACnD9I,GAEAhD,EAAKlI,QAACmI,cAAc6U,GAAc,CAAElN,UAAW,cACnDkE,EACA9I,GCLFoS,GAAmB,IAAOpV,EAAAA,QAAMC,cAAc+U,GAAgB,CAAEpN,UAAW,YAAaD,MAAO/L,EAAMvC,KAAMiH,OAAQ1E,EAAMvC,OACzHgc,GAAc,EAAGrS,WAAUmS,UAAWnV,EAAKlI,QAACmI,cAAc,IAAK,CAAEkV,KAAMA,GAAQnS,GAC/EsS,GAAiB,EAAGtS,cAAehD,EAAAA,QAAMC,cAAc,OAAQ,KAAM+C,GCPpE,IAAIuS,IACX,SAAWA,GACPA,EAAkB,MAAI,aACtBA,EAAmB,OAAI,SACvBA,EAAgB,IAAI,WACpBA,EAAoB,QAAI,UACxBA,EAAoB,QAAI,gBACxBA,EAAmB,OAAI,cAC1B,CAPD,CAOGA,KAAeA,GAAa,CAAA,ICFnB,MAACC,GAAQ3d,EAAAA,QAAOE,IAAIC,WAAW,CAAEC,YAAa,aAAcC,YAAa,eAAiB,gBAAiB6H,IACnH,MAAM0V,UAAEA,EAAY,WAAUC,OAAEA,EAAS,QAAOC,OAAEA,EAAS,QAAOC,QAAEA,EAAU,QAAW7V,EACzF,IAAI8V,EACAC,EACAC,EACAC,EACAC,EAAY,GACZC,EAAa,GAmBjB,MAlBkB,aAAdT,GACAI,EAAaH,GAAUH,GAAWG,GAClCI,EAAiBH,GAAUJ,GAAWI,GACtCM,EAAYzX,EAAM5C,MAAMga,GACxBG,EAAgB,WAGhBF,EAAaF,GAAUJ,GAAWI,GAClCG,EAAiBJ,GAAUH,GAAWG,GACtCQ,EAAa1X,EAAM5C,MAAMga,GACzBG,EAAgB,QAID,aAAdN,GAAuC,YAAXE,GACd,eAAdF,GAAyC,YAAXC,KAC/BM,EAAW,GAER,wBACUH,8BACIC,6BACDC,sCAGRC,yDAIMC,4BACCC,mBAElB,IAELV,GAAMvd,YAAc,QC5CpB,MAAMke,GAAW,CACbC,IAAK,aACLC,OAAQ,UAECC,GAAaze,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,eAAiB,yDAAyDsG,EAAM5C,MAAMvC,SACxKkd,GAAc1e,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,mBAAoBC,YAAa,eAAiB,+CAAgD6H,GAAUoW,GAASpW,EAAMyW,iCAC9KC,GAAkB5e,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,uBAAwBC,YAAa,gBAAkB,qDAC9Gwe,GAAa7e,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,gBAAkB,+BAA+BsG,EAAM5C,MAAMV,OAC/Iyb,GAAY9e,EAAMC,QAACiH,KAAK/G,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,gBAAkB,eAAesG,EAAM9B,KAAKa,KAAKd,wBAAwB+B,EAAM9B,KAAKa,KAAKV,wBAAwB2B,EAAM9B,KAAKa,KAAKX,0BAA0B4B,EAAM5C,MAAMT,YAAYqD,EAAM9B,KAAKa,KAAKR,SACpR6Z,GAAW/e,EAAAA,QAAOE,IAAIC,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,gBAAkB,eAAesG,EAAM/B,wBAAwB+B,EAAM5C,MAAM,kBAAkB4C,EAAM5C,MAAM,YAAY4C,EAAMxF,OAAOS,QAAQC,IAAIN,SAC5Nyd,GAAYhf,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,gBAAkB,eAAesG,EAAM9B,KAAK2B,MAAM5B,wBAAwB+B,EAAM9B,KAAK2B,MAAMxB,wBAAwB2B,EAAM9B,KAAK2B,MAAMzB,0BAA0B4B,EAAM9B,KAAK2B,MAAMvB,oBAAoB0B,EAAM9B,KAAK2B,MAAMtB,SACpS+Z,GAAUjf,EAAAA,QAAOgQ,MAAM7P,WAAW,CAAEC,YAAa,eAAgBC,YAAa,eAAiB,wCAAyC6H,GAAWA,EAAMgX,SAAW,UAAY,cAChLC,GAAkBnf,EAAAA,QAAOif,IAAS9e,WAAW,CAAEC,YAAa,uBAAwBC,YAAa,gBAAkB,oBAAoBsG,EAAMxF,OAAOS,QAAQE,KAAKL,sBAAsBkF,EAAMvD,OAAOE,cAAcqD,EAAM5C,MAAMvC,qCAAqCmF,EAAMxF,OAAOa,UAAUX,KAAKG,WAAWsd,kBAAyBnY,EAAM9B,KAAKe,SAASb,eACvVqa,GAAepf,EAAMC,QAACqa,IAASna,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,eAAiB,4CCf5Ggf,GAAYnX,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GACtJC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,sVAAuVN,KAAM,kBCG/ZgX,GAAS,EAAGlV,KAAI4F,QAAOuP,OAAMxY,UAASP,QAAOgZ,WAAUC,QAAOC,YAAW7K,SAAQ1J,WAAU+T,YAAW,MAC/G,MAAMS,EAAiBxX,EAAAA,QAAMC,cAAcqW,GAAY,KACnDtW,UAAMC,cAAcsW,GAAa,CAAEC,MAAOe,EAAY,SAAW,OAASvU,GAC1EuU,GAAavX,EAAAA,QAAMC,cAAcwW,GAAiB,KAAMc,GACxD1P,GAASuP,GAAQ/Y,GAASiZ,GAAS5K,EAAU1M,UAAMC,cAAcyW,GAAY,KACzE1W,UAAMC,cAAcuV,GAAO,CAAEC,UAAW,aAAcE,OAAQ,SAAUC,QAAS,MAC7E0B,EACAzP,GAAS7H,EAAAA,QAAMC,cAAc0W,GAAW,KAAM9O,GAC9CjJ,GAAYoB,EAAKlI,QAACmI,cAAcgX,GAAc,CAAEva,KAAMkC,GAClDoB,EAAKlI,QAACmI,cAAciX,GAAU,CAAE7D,KAAM,OAAQ1L,MAAOnJ,EAAM5C,MAAMvC,KAAM0D,MAAOyB,EAAMxF,OAAOS,QAAQC,IAAIP,aAC/Gie,GAAQpX,EAAAA,QAAMC,cAAc2W,GAAU,KAAMQ,GAC5C/Y,GAAS2B,EAAAA,QAAMC,cAAc4W,GAAW,KAAMxY,GAC9CqO,GAAW,MACnB,OAAI2K,EACQrX,EAAKlI,QAACmI,cAAc+W,GAAiB,CAAED,SAAUA,EAAUU,QAASxV,GAAMuV,GAE9ExX,EAAKlI,QAACmI,cAAc6W,GAAS,CAAEC,SAAUA,EAAUU,QAASxV,GAAMuV,EAAgB,GCnBxFxe,OAAEA,GAAQ4C,MAAAA,GAAKX,OAAEA,IAAWuD,EACrBkZ,GAAQ7f,EAAMC,QAAC6f,MAAM3f,WAAW,CAAEC,YAAa,aAAcC,YAAa,eAAiB,wFAAwFc,GAAOS,QAAQC,IAAIP,0BAA0B8B,GAAO5B,iHAAiHL,GAAOa,UAAUX,KAAKG,qBAAqBL,GAAOa,UAAUX,KAAKG,8UAA8UuC,GAAM,uDAAuD5C,GAAOa,UAAUX,KAAKG,+BAA+BL,GAAOa,UAAUX,KAAKG,sCAAsCL,GAAOa,UAAUX,KAAKE,qDAAqDJ,GAAOa,UAAUX,KAAKG,qBAAqBL,GAAOa,UAAUX,KAAKG,kQAAkQuC,GAAM,8EAA8E5C,GAAOS,QAAQE,KAAKN,qBAAqBL,GAAOS,QAAQE,KAAKN,cAAcL,GAAOS,QAAQC,IAAIN,2iBCEr9Cwe,GAAYlS,IACrB,IAAImS,QAAEA,EAAOC,cAAEA,EAAahc,MAAEA,EAAKuX,KAAEA,EAAI0D,SAAEA,EAAQgB,UAAEA,EAASnQ,UAAEA,EAASoQ,SAAEA,GAAatS,EAAI0F,EAAa1K,EAAOgF,EAAI,CAAC,UAAW,gBAAiB,QAAS,OAAQ,WAAY,YAAa,YAAa,aACxM,MAAMzD,EAAKsE,EAAAA,SAAQ,IAAMhF,EAAW,aAAa,IAC3C0W,EAAcvH,SAAO,MACrBwH,EAAe1E,eAAa5S,IAC9BoX,EAASpX,EAAEuX,cAAcN,QAAS/b,EAAM,GACzC,CAACkc,EAAUlc,IAUd,OATA2K,EAAAA,WAAU,KACDwR,EAAYrH,UAMjBqH,EAAYrH,QAAQkH,eAJE,IAAlBA,EAIqC,GAC1C,CAACA,IACI9X,UAAMC,cAAckX,GAAQ7a,OAAOC,OAAO,CAAE0F,GAAIA,EAAI8U,SAAUA,GAAY3L,GAC9EpL,EAAAA,QAAMC,cAAcyX,GAAO,CAAEhT,IAAKuT,EAAahW,GAAIA,EAAIwG,KAAM,WAAYoP,QAASA,EAAS/b,MAAOA,EAAOuX,KAAMA,EAAM0D,SAAUA,EAAU,aAAcgB,EAAWnQ,UAAWA,EAAWoQ,SAAUE,IAAkB,ECrB/MR,GAAQ7f,EAAMC,QAAC6f,MAAM3f,WAAW,CAAEC,YAAa,aAAcC,YAAa,eAAiB,8oBCI3FkgB,GAAQnN,EAAUA,YAAC,CAACvF,EAAIhB,KACjC,IAAImT,QAAEA,EAAO/b,MAAEA,EAAKuX,KAAEA,EAAI0D,SAAEA,EAAQiB,SAAEA,EAAQ/V,GAAEA,GAAOyD,EAAI0F,EAAa1K,EAAOgF,EAAI,CAAC,UAAW,QAAS,OAAQ,WAAY,WAAY,OACxI,MAAMwS,EAAe1E,eAAa5S,IAC9BoX,EAASpX,EAAEuX,cAAcN,QAAS/b,EAAM,GACzC,CAACkc,EAAUlc,IACR5D,EAAc+J,QAA+BA,EAAKV,EAAW,SACnE,OAAQvB,UAAMC,cAAckX,GAAQ7a,OAAOC,OAAO,CAAE0F,GAAI/J,EAAa6e,SAAUA,GAAY3L,GACvFpL,UAAMC,cAAcyX,GAAO,CAAEzV,GAAI/J,EAAauQ,KAAM,QAASoP,QAASA,EAAS/b,MAAOA,EAAOuX,KAAMA,EAAM0D,SAAUA,EAAUiB,SAAUE,EAAcxT,IAAKA,IAAS,ICV9J2T,GAAWxgB,EAAMC,QAACwgB,SAAStgB,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,eAAiB,oFACpGqgB,GAAS1gB,EAAAA,QAAO2gB,OAAOxgB,WAAW,CAAEC,YAAa,cAAeC,YAAa,eAAiB,eAAesG,EAAM9B,KAAKtE,WAAWqE,wBAAwB+B,EAAM9B,KAAKtE,WAAWyE,uBAAuB2B,EAAM9B,KAAKtE,WAAWuE,yBAAyB6B,EAAM9B,KAAKtE,WAAWwE,0BAA0B4B,EAAM9B,KAAKtE,WAAW0E,8BAA8B0B,EAAM9B,KAAKtE,WAAW4E,wBAAwBwB,EAAM9B,KAAKtE,WAAW2E,SCCra,MAAM0b,WAAmBC,EAAAA,UAC5B,WAAA5W,GACIC,SAAS4W,WACT3W,KAAKkW,aAAe,CAACpc,EAAO+b,KACxB,MAAMe,cAAEA,GAAkB5W,KAAKjC,MAC3B6Y,EACA5W,KAAK6W,qBAAqB/c,EAAO+b,GAGrC7V,KAAK8W,mBAAmBhd,EAAO+b,EAAQ,EAE3C7V,KAAK8W,mBAAqB,CAAChd,EAAO+b,KAC9B,MAAMG,SAAEA,GAAahW,KAAKjC,MACtB8X,GACAG,EAAS,CAAClc,GACb,EAELkG,KAAK6W,qBAAuB,CAAC/c,EAAO+b,KAChC,MAAMkB,SAAEA,EAAQf,SAAEA,GAAahW,KAAKjC,MACpC,IAAIiZ,EAAc,GAEdA,EADAnB,EACc,IAAIkB,EAAUjd,GAGdid,EAASvV,QAAQyV,GAAkBA,IAAkBnd,IAEvEkc,EAASgB,EAAY,CAE5B,CACD,MAAAjW,GACI,MAAM6V,cAAEA,EAAatF,QAAEA,EAAOyF,SAAEA,EAAQjN,MAAEA,EAAKiL,SAAEA,EAAQM,SAAEA,GAAarV,KAAKjC,MACvEmZ,EAAiBN,EAAgBhB,GAAWQ,GAClD,OAAQpY,EAAKlI,QAACmI,cAAcoY,GAAU,CAAEtB,SAAUA,GAC9CjL,GAAS9L,EAAAA,QAAMC,cAAcsY,GAAQ,KAAMzM,GAC3CwH,EAAQ/D,KAAK4J,GAAYnZ,EAAAA,QAAMC,cAAciZ,EAAgB5c,OAAOC,OAAO,CAAEwI,IAAKoU,EAAOrd,MAAOub,SAAUA,EAAUQ,QAASkB,EAASK,SAASD,EAAOrd,OAAQkc,SAAWH,GAAY7V,KAAKkW,aAAaiB,EAAOrd,MAAO+b,IAAYsB,MACxO,ECtCE,MAAME,GAAetZ,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GACzJC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,iYAAkYN,KAAM,kBCD1cmZ,GAAiBvZ,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GAC3JC,UAAMC,cAAc,OAAQ,CAAEQ,EAAG,sQAAuQN,KAAM,kBCM5SoZ,GAAY,CAAE5R,MAAO/L,EAAMvC,KAAMiH,OAAQ1E,EAAMvC,MAK/CmgB,GAAW3hB,EAAMC,QAACkT,IAAQhT,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,eAAiB,wCAAwC0D,EAAMvC,cAAcuC,EAAMvC,mBCbpK,SAASogB,GAAgBjD,GAC5B,OAAQA,GACJ,IAAK,OAML,QACI,MAAO,aALX,IAAK,SACD,MAAO,SACX,IAAK,QACD,MAAO,WAInB,CCXO,SAASkD,GAAW/R,EAAOgS,GAC9B,cAAehS,GACX,IAAK,SACD,OAAOA,EACX,IAAK,SACD,MAAO,GAAGA,MACd,IAAK,SACD,MAAO,UAAU+R,GAAW/R,EAAMiS,IAAK,mBAAmBF,GAAW/R,EAAMkS,QAC/E,QACI,OAAOF,GAAY,MAE/B,CCRO,SAASG,IAAiBC,WAAEA,EAAUC,YAAEA,EAAWC,WAAEA,EAAUC,eAAEA,EAAcC,QAAEA,EAAOC,aAAEA,IAC7F,MAAMC,EAAmBN,EAAWxK,KAAI,CAAC7I,EAAG4T,IAAU,sBACvCA,EAAQ,yBACRA,EAAQ,8CAEbL,ECRP,SAA2BM,EAAOD,GACrC,OAAOC,EAAMC,MAAM,EAAGF,EAAQ,GAAGG,QAAO,CAACC,EAAKC,IAAQD,EAAMC,GAAK,EACrE,CDM2BC,CAAkBX,EAAYK,EAAQ,GAAK,uCAI5DO,EAAoBb,EAAYzK,KAAI,CAAC7I,EAAG4T,IAAU,2BACpCA,EAAQ,8BACRA,EAAQ,+CAEjBL,ECbR,SAA0BM,EAAOD,GACpC,OAAOC,EAAMC,MAAMF,GAAOG,QAAO,CAACC,EAAKC,IAAQD,EAAMC,GAAK,EAC9D,CDW4BG,CAAiBb,EAAYA,EAAW7Y,OAASkZ,GAAS,oBAG5ES,EAAyC,UAAnBb,GAAiD,SAAnBA,EACpDc,EAAa,sBACJjB,EAAW3Y,qCACX2Y,EAAW3Y,8PAUV2Z,EAAsB,0CAA4C,qBAG5EE,EAA0C,QAAnBf,GAA+C,SAAnBA,EACnDgB,EAAc,2BACAlB,EAAY5Y,0CACZ4Y,EAAY5Y,8PAUhB6Z,EAAuB,2CAA6C,qBAG9EE,EAAc,2DAEE3c,EAAMxF,OAAOS,QAAQE,KAAKR,uEAItBqF,EAAMxF,OAAOS,QAAQE,KAAKN,mBAG9C+hB,EAAiB,qEAED5c,EAAMxF,OAAOS,QAAQE,KAAKR,8FAItBqF,EAAMxF,OAAOS,QAAQE,KAAKN,mBAGpD,MAAO,gCACkB8gB,EAAQ5K,KAAK8L,GAAQ3B,GAAW2B,EAAI1T,SAAQjE,KAAK,wFAMxEqW,EAAW3Y,OAAS,EAAIiZ,EAAmB,WAC3CL,EAAY5Y,OAAS,EAAIyZ,EAAoB,aAE7CG,UACAE,YAEiB,WAAjBd,EAA4BgB,EAAiBD,OAEnD,CEnFO,IAAIG,IACX,SAAWA,GACPA,EAAyB,UAAI,YAC7BA,EAA0B,WAAI,YACjC,CAHD,CAGGA,KAAkBA,GAAgB,CAAA,ICJ9B,MAAMC,GAAmBxb,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GAC7JC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,sBAAuBN,KAAM,iBACxGH,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,sBAAuBN,KAAM,kBCF/Fqb,GAAezb,GAChBC,EAAKlI,QAACmI,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GAC1HC,UAAMC,cAAc,OAAQ,CAAEQ,EAAG,uEAAwEN,KAAM,kBCF1Gsb,GAAiB1b,GAClBC,EAAKlI,QAACmI,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GAC1HC,UAAMC,cAAc,OAAQ,CAAEQ,EAAG,wEAAyEN,KAAM,kBCG3Gub,GAAc,EAAGC,YAAWC,WAAUnS,UAC1CkS,GAAaA,EAAUC,WAAaA,EAErCD,EAAUlG,YAAc6F,GAAcO,UAC/B7b,EAAKlI,QAACmI,cAAcub,GAAa,CAAEze,MAAOyB,EAAMxF,OAAOS,QAAQC,IAAIJ,KAAMmQ,KAAMA,IAEnFzJ,EAAKlI,QAACmI,cAAcwb,GAAe,CAAE1e,MAAOyB,EAAMxF,OAAOS,QAAQC,IAAIJ,KAAMmQ,KAAMA,IAJ7EzJ,EAAAA,QAAMC,cAAcsb,GAAiB,CAAE9R,KAAMA,ICJrD,SAASqS,GAAcC,EAAUC,GACpC,MAAO/B,EAAYgC,GAAiB/V,EAAQA,SAAC,IACvCgW,EAAmB,KACrB,IAAKH,EAASnL,QACV,OACJ,MAAMuL,EAAQJ,EAASnL,QAAQ3L,iBAAiB,2BAC1CmX,EAASC,MAAM3T,KAAKyT,GAAO5M,KAAK+M,GAASA,EAAKC,wBAAwB5U,QAC5EsU,EAAcG,EAAO,EAezB,OAbA3V,EAAAA,WAAU,KACNyV,GAAkB,GACnB,CAACH,EAASnL,UAEbnK,EAAAA,WAAU,KACN,IAAKuV,EAAapL,QACd,OACJ,MAAM4L,EAAyBC,EAAAA,QAASP,EAAkB,IACpDnV,EAAiB,IAAIC,UAAewV,GAG1C,OAFAzV,EAAeE,QAAQ+U,EAAapL,SAE7B,IAAM7J,EAAeG,YAAY,GACzC,CAAC8U,EAAapL,UACVqJ,CACX,CC3BO,SAASyC,GAAWC,GACvB,MAAMxC,EAAUwC,EAAQnZ,QAAQ6X,IAAuB,IAAfA,EAAIuB,SACtC7C,EAAaI,EAAQ3W,QAAQ6X,GAAuB,SAAfA,EAAIwB,SACzC7C,EAAcG,EAAQ3W,QAAQ6X,GAAuB,UAAfA,EAAIwB,SAC1CC,EAAY3C,EAAQ3W,QAAQ6X,GAAuB,SAAfA,EAAIwB,SAAsBxB,EAAIwB,SACxE,MAAO,CACH1C,QAAS,IAAIJ,KAAe+C,KAAc9C,GAC1CD,aACAC,cAER,CCTO,SAAS+C,GAAgBC,GAC5BvW,EAAAA,WAAU,KACN,IAAKuW,EAAUpM,QACX,OACJ,IAAIqM,GAAa,EACjB,MAAMC,EAAeF,EAAUpM,QACzBuM,EAAW,CACbC,KAAM,EACNC,EAAG,GAEDC,EAAoB1c,IACtB,IAAKsc,EACD,OACJ,MAAMK,EAAK3c,EAAE4c,QAAUL,EAASE,EAChCH,EAAaO,WAAaN,EAASC,KAAOG,EACrCN,IACDC,EAAaza,MAAMib,OAAS,WAC5BR,EAAaza,MAAMkb,WAAa,QAEpCV,GAAa,CAAI,EAEfW,EAAiB,KACnBrb,SAAS8E,oBAAoB,YAAaiW,GAC1C/a,SAAS8E,oBAAoB,UAAWuW,GACxCX,GAAa,EACRC,IAELA,EAAaza,MAAMob,eAAe,UAClCX,EAAaza,MAAMob,eAAe,eAAc,EAE9CC,EAAoBld,IACjBsc,IAELC,EAASC,KAAOF,EAAaO,WAC7BN,EAASE,EAAIzc,EAAE4c,QACfjb,SAAS6E,iBAAiB,YAAakW,GACvC/a,SAAS6E,iBAAiB,UAAWwW,GAAe,EAIxD,OAFAV,EAAa9V,iBAAiB,YAAa0W,GAEpC,IAAMZ,aAAmD,EAASA,EAAa7V,oBAAoB,YAAayW,EAAiB,GAEzI,CAACd,EAAUpM,SAClB,CCvCO,SAASmN,GAAkB/B,GAC9B,MAAO9B,EAAgB8D,GAAqB9X,EAAQA,SAAC,SAC/C+X,EAAuB,KACzB,IAAKjC,EAAapL,QACd,OACJ,MAAMjJ,MAAEA,GAAUqU,EAAapL,QAAQ2L,yBACjCkB,WAAEA,EAAUS,YAAEA,GAAgBlC,EAAapL,QAE7CoN,EADAE,EAAcvW,EACI,OAGH,IAAf8V,EAIAA,EAAa9V,GAASuW,EACJ,MAGJ,SAPI,QAOK,EAgB/B,OAdAzX,EAAAA,WAAU,KACN,GAAKuV,EAAapL,QAGlB,OADAoL,EAAapL,QAAQxJ,iBAAiB,SAAU6W,GACzC,KAAQ,IAAIvY,EAAI,OAAuC,QAA/BA,EAAKsW,EAAapL,eAA4B,IAAPlL,OAAgB,EAASA,EAAG2B,oBAAoB,SAAU4W,EAAqB,CAAG,GACzJ,CAACjC,EAAapL,UACjBnK,EAAAA,WAAU,KACN,IAAKuV,EAAapL,QACd,OACJ,MAAM4L,EAAyBC,EAAAA,QAASwB,EAAsB,IACxDlX,EAAiB,IAAIC,UAAewV,GAE1C,OADAzV,EAAeE,QAAQ+U,EAAapL,SAC7B,IAAM7J,EAAeG,YAAY,GACzC,CAAC8U,EAAapL,UACV,CAAEsJ,iBAAgB8B,eAC7B,CCzCO,MACMmC,GAAmB,OCGnB3S,GAAS3T,EAAMC,QAACsmB,GAAGpmB,WAAW,CAAEC,YAAa,cAAeC,YAAa,eAAiB,UAAUimB,sDAAoE,EAAG3H,QAAQ,UAAaiD,GAAgBjD,0CAA8C,EAAGZ,UDJ5O,KCI+QpX,EAAM5C,MAAMga,oBAA0B,EAAGA,UDJxT,KCI2VpX,EAAM5C,MAAMga,8BAAoCpX,EAAMxF,OAAOS,QAAQE,KAAKN,wBAAwB,EAAG0F,OAAO,KAAQ,QAAQA,OCAlf,SAASsf,GAAgB3Y,GAC5B,IAAIqT,SAAEA,EAAQjB,cAAEA,EAAaE,SAAEA,EAAQsG,cAAEA,GAAkB5Y,EAAI6Y,EAAc7d,EAAOgF,EAAI,CAAC,WAAY,gBAAiB,WAAY,kBAClI,MAAsB,WAAlB4Y,EACOte,EAAKlI,QAACmI,cAAcuL,GAAQlP,OAAOC,OAAO,CAAE,EAAEgiB,IACjDve,EAAAA,QAAMC,cAAcuL,GAAQlP,OAAOC,OAAO,CAAE,EAAEgiB,GAClDve,EAAAA,QAAMC,cAAc2X,GAAU,CAAEC,QAASkB,EAAUjB,cAAeA,EAAeE,SAAUA,IACnG,CCNO,MAAMwG,GAAO3mB,EAAAA,QAAO4mB,GAAGzmB,WAAW,CAAEC,YAAa,YAAaC,YAAa,eAAiB,mDAAmD,EAAGse,QAAQ,UAAaiD,GAAgBjD,mGAAuG,EAAGZ,UHJtQ,KGIySpX,EAAM5C,MAAMga,oBAA0B,EAAGA,UHJlV,KGIqXpX,EAAM5C,MAAMga,YAAkBpX,EAAM9B,KAAKc,UAAUT,qBAAqByB,EAAM9B,KAAKc,UAAUf,wBAAwB+B,EAAM9B,KAAKc,UAAUX,uBAAuB2B,EAAM9B,KAAKc,UAAUb,yBAAyB6B,EAAM9B,KAAKc,UAAUZ,0BAA0B4B,EAAM9B,KAAKc,UAAUV,8BAA8B,EAAGiC,OAAO,KAAQ,QAAQA,0BHFlsB,+BGEwwBP,EAAMxF,OAAOa,UAAUX,KAAKG,yBAAyBmF,EAAMxF,OAAOS,QAAQE,KAAKR,aCCh3B,SAASulB,GAAchZ,GAC1B,IAAIqT,SAAEA,EAAQ4F,MAAEA,EAAK3G,SAAEA,EAAQsG,cAAEA,EAAavH,SAAEA,GAAarR,EAAIkZ,EAAYle,EAAOgF,EAAI,CAAC,WAAY,QAAS,WAAY,gBAAiB,aAC3I,MAAsB,WAAlB4Y,EACQte,EAAAA,QAAMC,cAAcue,GAAMliB,OAAOC,OAAO,CAAE,EAAEqiB,GAChD5e,EAAAA,QAAMC,cAAcmY,GAAO,CAAEtc,MAAO6iB,EAAO9G,QAASkB,EAAUhC,SAAUA,EAAUiB,SAAUA,KAE5FhY,EAAAA,QAAMC,cAAcue,GAAMliB,OAAOC,OAAO,CAAE,EAAEqiB,GAChD5e,EAAAA,QAAMC,cAAc2X,GAAU,CAAE9b,MAAO6iB,EAAO9G,QAASkB,EAAUhC,SAAUA,EAAUiB,SAAUA,IACvG,CCTA,MAAM6G,GAAsB,CAAC,GAAI,QAC1B,SAASC,IAAaR,cAAEA,EAAgB,WAAUS,eAAEA,EAAcC,cAAEA,IACvE,MAAMC,IAAqBF,GACpBG,EAAgBC,GAAqBJ,GAAkBF,GA4BxDO,EAAoB,KAClBF,EAAe9d,SAAW4d,EAAc5d,OAI5C+d,EAAkBH,GAHdG,EAAkB,GAGU,EAYpC,MAAO,CACHF,mBACAC,iBACAG,gBAZoB,CACpBpd,GAAI,YACJ6J,MAAO,YACPnE,MAAO,OACP6O,MAAO,SACPqG,OAAQ,OACRyC,aAAc,CAACC,EAAQhB,IAAiBve,EAAKlI,QAACmI,cAAcoe,GAAiB/hB,OAAOC,OAAO,CAAE,EAAEgiB,EAAa,CAAExF,SAAUmG,EAAe9d,SAAW4d,EAAc5d,OAAQ0W,cAAeoH,EAAe9d,OAAS,GAAK8d,EAAe9d,OAAS4d,EAAc5d,OAAQ4W,SAAUoH,EAAmBd,cAAeA,KAC9SkB,WAAY,CAACC,EAAKb,EAAWc,EAASC,IAAc3f,EAAKlI,QAACmI,cAAcye,GAAepiB,OAAOC,OAAO,CAAA,EAAIqiB,EAAW,CAAED,MAAOc,EAAIxd,GAAI8W,SAAU4G,EAAS5G,SAAUf,SAAU0H,EAAQE,YAAatB,cAAeA,EAAevH,SAAU4I,EAAS5I,aAMlP6I,YA/CgB,CAAC7G,EAAU4F,KAC3B,GAAIA,QAEJ,GAAI5F,GAA8B,WAAlBuF,EAEZa,EAAkB,CAACR,SAGvB,GAAI5F,EAAU,CAEV,GAAImG,EAAe9F,SAASuF,GACxB,OACJ,MAAMkB,EAAS,IAAIX,EAAgBP,GACnCQ,EAAkBU,EACrB,KACI,CAED,MAAMvF,EAAQ4E,EAAeY,WAAW7d,GAAOA,IAAO0c,IACtD,GAAIrE,EAAQ,EACR,OACJ,MAAMuF,EAAS,IAAIX,GACnBW,EAAOE,OAAOzF,EAAO,GACrB6E,EAAkBU,EACrB,GA0BT,CCxDO,MAAMG,GAAgBnoB,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,qBAAsBC,YAAa,gBAAkB,8GAA8GsG,EAAMxF,OAAOS,QAAQC,IAAIP,YACjP8mB,GAAgBpoB,EAAAA,QAAOkH,KAAK/G,WAAW,CAAEC,YAAa,qBAAsBC,YAAa,gBAAkB,gFAAgFsG,EAAM9B,KAAKQ,aAAaH,qBAAqByB,EAAM9B,KAAKQ,aAAaT,wBAAwB+B,EAAM9B,KAAKQ,aAAaL,uBAAuB2B,EAAM9B,KAAKQ,aAAaP,yBAAyB6B,EAAM9B,KAAKQ,aAAaN,0BAA0B4B,EAAM9B,KAAKQ,aAAaJ,cAClcojB,GAAyBroB,EAAMC,QAACmoB,IAAejhB,OAAM,KAAO,CACrElG,GAAI,SACJ2P,KAAM,aACNzQ,WAAW,CAAEC,YAAa,8BAA+BC,YAAa,eAAiB,oIAAoI8nB,uBAAkCxhB,EAAMxF,OAAOS,QAAQE,KAAKP,eAAeoF,EAAMxF,OAAOS,QAAQC,IAAIL,8DAA8DmF,EAAMxF,OAAOa,UAAUX,KAAKE,UCItZ,SAASkmB,IAAaC,OAAEA,EAAM5D,UAAEA,EAASwE,aAAEA,IAC9C,GAAIZ,EAAOa,WAAazE,EACpB,MAAM,IAAI0E,MAAM,WAAWd,EAAOtd,yEAEtC,GAAIsd,EAAO3C,OACP,OAAO,KAEX,MAAM2B,EAAc,CAChBxZ,IAAKwa,EAAOtd,GAAGqe,WACfre,GAAI,oBAAoBsd,EAAOtd,KAC/B5B,KAAM,eACNmW,MAAO+I,EAAO/I,MACdZ,QAAS2J,EAAO3J,QAChBhO,UAAW2X,EAAOa,SAAW,gBAAa7U,GAG9C,GAAIgU,EAAOD,aACP,OAAOC,EAAOD,aAAaC,EAAQhB,GAEvC,MAYMgC,EAAsBhB,EAAOa,SAAWF,GAAyBD,GACjEO,EAAoBjB,EAAOa,SAAW,CAAE9Y,QAbtB,KACpB,IAAKqU,EAED,YADAhV,QAAQ8Z,IAAI,sEAGhB,MAAMC,EClCP,UAA0B/E,UAAEA,EAASC,SAAEA,IAC1C,MAAM+E,EAAehF,EAAUC,WAAaA,EACtCgF,EAAqBjF,EAAUlG,YAAc6F,GAAcO,UACjE,IAAIgF,EAAmBvF,GAAcO,UAIrC,OAHI8E,GAAgBC,IAChBC,EAAmBvF,GAAcwF,YAE9B,CAAElF,WAAUnG,UAAWoL,EAClC,CD0B8BE,CAAiB,CAAEpF,YAAWC,SAAU2D,EAAOtd,KAChEke,EAILA,EAAaO,GAHT/Z,QAAQ8Z,IAAI,wEAGW,GAG4C,GAC3E,OAAQzgB,EAAAA,QAAMC,cAAcuL,GAAQlP,OAAOC,OAAO,CAAE,EAAEgiB,GAClDve,EAAKlI,QAACmI,cAAckS,GAAS,CAAEzV,KAAM6iB,EAAO3gB,SACxCoB,EAAKlI,QAACmI,cAAcsgB,EAAqBjkB,OAAOC,OAAO,CAAE,EAAEikB,GACvDjB,EAAOrU,MAAQqU,EAAOrU,KACtBqU,EAAOzT,OAAS9L,UAAMC,cAAc,OAAQ,KAAMsf,EAAOzT,OACzDyT,EAAOa,UAAapgB,EAAAA,QAAMC,cAAc+f,GAAe,KACnDhgB,EAAAA,QAAMC,cAAcyb,GAAa,CAAEC,UAAWA,EAAWC,SAAU2D,EAAOtd,GAAIwH,KAAM,OACxG,CEhDA,MAAMuX,GAAexiB,EAAMxF,OAAOS,QAAQE,KAAKN,KACzC4nB,GAAcziB,EAAMxF,OAAOS,QAAQE,KAAKL,KACjC4nB,GAAqBrpB,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,0BAA2BC,YAAa,gBAAkB,uCAAuCsG,EAAMvD,OAAO5B,mBAAmB2nB,4DAAsEA,eAAyBC,gBAAyBD,gBAA0BA,mUCA1V,MAAMrR,GAAY9X,EAAAA,QAAOE,IAAIC,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,2HAA2HimB,6BAC5NgD,GAAUtpB,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,eAAgBC,YAAa,eAAiB,mGAAmGsG,EAAMxF,OAAOS,QAAQE,KAAKN,sBACzN,SAAS+nB,IAAU/B,gBAAEA,EAAegC,sBAAEA,EAAqBrF,aAAEA,EAAYhZ,SAAEA,IAC9E,IAAI0C,EACJ,MAAO4b,EAAUC,GAAerb,EAAQA,UAAC,GACzCO,EAAAA,WAAU,KACN,IAAK4a,EAAsBzQ,QACvB,OACJ,MAKM4Q,EAAuB,IAAIC,sBALfC,IACdA,EAAQC,SAASC,IACbL,GAAaK,EAAMC,eAAe,GACpC,IAKN,OAFAL,EAAqBva,QAAQoa,EAAsBzQ,SAE5C,IAAM4Q,EAAqBta,YAAY,GAE/C,CAACma,EAAsBzQ,UAC1B,MAAMkR,EAAgD,QAA/Bpc,EAAKsW,EAAapL,eAA4B,IAAPlL,OAAgB,EAASA,EAAG6W,wBAOpFwF,EAAuB,CACzB5E,SAAU,QACV/G,IAAK,EACLgH,KAAM0E,aAAqD,EAASA,EAAc1E,KAClFzV,MAAOma,aAAqD,EAASA,EAAcna,OAEjFlF,EAAQ6e,EAAWS,EAZK,CAC1B5E,SAAU,WACV/G,IAAK,EACLgH,KAAM,EACN4E,MAAO,GASX,OAAQhiB,EAAKlI,QAACmI,cAAc0P,GAAW,CAAElN,MAAOA,GAC5C6c,GAAa,CAAEC,OAAQF,IACvBrf,EAAAA,QAAMC,cAAckhB,GAAS,KAAMne,GAC3C,CCxCO,MAAMif,GAAiBliB,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GAC3JC,UAAMC,cAAc,OAAQ,CAAEQ,EAAG,0SAA2SN,KAAM,kBCDzU+hB,GAAoBniB,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GAC9JC,UAAMC,cAAc,OAAQ,CAAEQ,EAAG,mnBAAonBN,KAAM,kBCDlpBgiB,GAAepiB,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GACzJC,UAAMC,cAAc,OAAQ,CAAEQ,EAAG,mEAAoEN,KAAM,kBCAxG,MAAMiiB,GAAmBvqB,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,wBAAyBC,YAAa,eAAiB,eAAesG,EAAM5C,MAAMR,qBAAqBoD,EAAM5C,MAAMR,kBAAkB,EAAGinB,iBAAkB,YAAYA,wFAAkG7jB,EAAM5C,MAAMT,MAC5UmnB,GAAwBzqB,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,6BAA8BC,YAAa,eAAiB,WAAWsG,EAAM5C,MAAMT,uBAAuBqD,EAAMxF,OAAOS,QAAQE,KAAKP,uBAAuBoF,EAAMvD,OAAOI,QCFrOknB,GAAS1qB,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,cAAeC,YAAa,eAAiB,sBCC3Fkc,GAAMvc,EAAAA,QAAO2qB,GAAGxqB,WAAW,CAAEC,YAAa,WAAYC,YAAa,eAAiB,oBAAoB,EAAG6gB,cAAeA,GACnI,8CAEsBva,EAAMxF,OAAOC,MAAMC,KAAKC,0BAE3C,EAAG+a,iBAAkBA,GACxB,6OAYsBA,kBCnBbuO,GAAkB5qB,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,uBAAwBC,YAAa,gBAAkB,kECE9GwqB,GAAY7qB,EAAAA,QAAO8qB,MAAM3qB,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,gBAAkB,qGAAqGsG,EAAM5C,MAAoB,iDAA8C,EAAGgnB,SAAUA,ICF9RC,GAAWhrB,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,eAAiB,6DCCtG4qB,GAAmB,CACrBznB,KAAM,qCAAqCmD,EAAMvD,OAAO5B,QACxD0pB,SAAU,oEACV9mB,KAAM,oBAEG6a,GAAUjf,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,eAAgBC,YAAa,eAAiB,gEAAgEsG,EAAMxF,OAAOS,QAAQE,KAAKL,QAAQ,EAAG0pB,aAAa,UAAaF,GAAiBE,mCCAnP,SAASC,IAAWjgB,SAAEA,EAAQqe,sBAAEA,EAAqBrF,aAAEA,EAAY/B,WAAEA,EAAUiJ,SAAEA,IACpF,MAAMC,EAAqBzS,SAAO,OAC3B0S,EAAWC,GAAgBnd,EAAQA,UAAC,IACpC4b,EAAewB,GAAoBpd,WAAS,CAC/CkQ,IAAK,EACLgH,KAAM,EACNzV,MAAO,EACPrH,OAAQ,IAENijB,EAA4B,KAC9B,IAAI7d,EACJ,MAAM8d,EAA6C,QAA/B9d,EAAKsW,EAAapL,eAA4B,IAAPlL,OAAgB,EAASA,EAAG6W,wBACjFkH,EAAU,CACZrG,MAAOoG,aAA+C,EAASA,EAAWpG,OAAS,EACnFzV,OAAQ6b,aAA+C,EAASA,EAAW7b,QAAU,EACrFyO,IAAK,EACL9V,OAAQ,IAEZgjB,EAAiBG,EAAQ,EAEvBC,EAAgC,KAClC,IAAIhe,EACJ,IAAKsW,EAAapL,QACd,OACJ,MAAM+S,EAAgB3H,EAAapL,QAAQ6M,WACL,QAArC/X,EAAKyd,EAAmBvS,eAA4B,IAAPlL,GAAyBA,EAAGke,SAASD,EAAe,EAAE,EAkDxG,GA/CAld,EAAAA,WAAU,KACN,IAAK4a,EAAsBzQ,QACvB,OACJ,MAQM4Q,EAAuB,IAAIC,sBALHC,IAC1BA,EAAQC,SAASC,IACbyB,GAAczB,EAAMC,eAAe,GACrC,GANU,CACZgC,UAAW,IASf,OADArC,EAAqBva,QAAQoa,EAAsBzQ,SAC5C,IAAM4Q,EAAqBta,YAAY,GAC/C,CAACma,EAAsBzQ,UAE1BnK,EAAAA,WAAU,KACD2c,GAEApH,EAAapL,SAElB2S,GAA2B,GAC5B,CAACvH,EAAapL,QAASwS,IAE1B3c,EAAAA,WAAU,KACN,IAAK2c,EACD,OACJ,IAAKpH,EAAapL,QACd,OACJ,MAAM4L,EAAyBC,EAAAA,QAAS8G,EAA2B,IAC7Dxc,EAAiB,IAAIC,UAAewV,GAE1C,OADAzV,EAAeE,QAAQ+U,EAAapL,SAC7B,IAAM7J,EAAeG,YAAY,GACzC,CAAC8U,EAAapL,QAASwS,IAE1B3c,EAAAA,WAAU,KACNid,GAA+B,GAChC,CAACN,IACJ3c,EAAAA,WAAU,KACN,IAAIf,EAEJ,OADgC,QAA/BA,EAAKsW,EAAapL,eAA4B,IAAPlL,GAAyBA,EAAG0B,iBAAiB,SAAUsc,GACxF,KACH,IAAIhe,EAC4B,QAA/BA,EAAKsW,EAAapL,eAA4B,IAAPlL,GAAyBA,EAAG2B,oBAAoB,SAAUqc,EAA8B,CACnI,GACF,CAAC1H,EAAapL,WAEZwS,EACD,OAAO,KACX,MAAMU,EAAiBxnB,OAAOC,OAAOD,OAAOC,OAAO,CAAA,EAAIulB,GAAgB,CAAExhB,OAAQ6d,GAAkBhB,SAAU,QAAS/Z,OAAQ,EAAG2gB,UAAW,SAAUC,UAAW,SAAUC,aAAc,aAAazlB,EAAMxF,OAAOS,QAAQE,KAAKN,SAU1N6qB,EAAShB,EARIjJ,EACd1K,KAAI,CAAC5H,EAAO2S,IAAU,wBACVA,EAAQ,sBACd3S,oBAGNjE,KAAK,IAGV,OAAQ1D,EAAAA,QAAMC,cAAc,MAAO,CAAEwC,MAAOqhB,EAAgBpf,IAAKye,GAC7DnjB,EAAAA,QAAMC,cAAcyiB,GAAW,CAAEE,IAAKsB,GAClClkB,EAAKlI,QAACmI,cAAc,QAAS,KAAM+C,IAC/C,CClGO,MAAMmhB,GAAc,CAACxF,GAASO,iBAAgBkF,iBAAgBC,qBAChD,CACbtL,UAAWmG,aAAuD,EAASA,EAAe9F,SAASuF,MAAW,EAC9GvR,UAAWgX,aAAuD,EAASA,EAAehL,SAASuF,MAAW,EAC9G5H,UAAWsN,aAAuD,EAASA,EAAejL,SAASuF,MAAW,ICHzG2F,GAAYvkB,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GACtJC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,2LAA4LN,KAAM,iBAC7QH,EAAAA,QAAMC,cAAc,SAAU,CAAE6I,GAAI,KAAMC,GAAI,IAAK/E,EAAG,IAAK7D,KAAM,iBACjEH,UAAMC,cAAc,OAAQ,CAAEQ,EAAG,wCAAyCN,KAAM,kBCmB9EokB,GAAoB,CACtBrZ,KAAMlL,EAAAA,QAAMC,cAAcqkB,GAAU,CAAE3c,MAAO,GAAIrH,OAAQ,KACzDkkB,QAAS,cAEPC,GAAc,OACPC,GAAY,EAAGC,gBAAe3B,aAAYrG,UAASiI,aAAaL,GAAmBH,iBAAgB5a,UAASqb,kBAAiB1E,eAAc2E,OAAMT,iBAAgB/F,gBAAeS,iBAAgBgG,cAAapJ,YAAWvB,eAAc4K,yBAE/O,MAAMC,EAAqBvU,SAAO,MAC5BqL,EAAWrL,SAAO,MAClB2Q,EAAwB3Q,SAAO,MACrCqM,GAAgBkI,GAEhB,MAAMjG,EAAgB8F,EAAKvV,KAAKkQ,GAAQA,EAAIxd,KAAIuB,QAAQvB,KAASoiB,aAAuD,EAASA,EAAejL,SAASnX,OACnJgd,iBAAEA,EAAgBC,eAAEA,EAAcG,gBAAEA,EAAeO,YAAEA,GAAgBd,GAAa,CACpFR,gBACAS,iBACAC,kBAGEU,EAAU,CACZE,YAAaA,GAAe6E,GAC5BM,YAAaA,GAAeN,IAG1BS,EAAuB,CAAC7F,KAAoB1C,GAC5CwI,EAAalG,EAAmBiG,EAAuBvI,EACvD1C,EAAa6B,GAAcC,EAAUkJ,IACrC9K,QAAEA,EAAOJ,WAAEA,EAAUC,YAAEA,GAAgB0C,GAAWyI,IAElDjL,eAAEA,GAAmB6D,GAAkBkH,GACvC/B,EAAWpJ,GAAiB,CAC9BC,aACAC,cACAC,aACAC,iBACAC,UACAC,iBAGJ,GAAI5Q,EAAS,CACT,MAAM4b,EAAc,IAAI/I,MAAMwI,GAAiB1kB,MAAK,GAAMoP,KAAI,KAAO,CAEjEtN,GAAoB,IAAhBR,KAAKE,SACT0jB,KAAM,SAEV,OAAQrlB,EAAKlI,QAACmI,cAAc6W,GAAS,CAAEkM,WAAYA,GAC/ChjB,EAAAA,QAAMC,cAAcwiB,GAAiB,CAAE/d,IAAKugB,GACxCjlB,UAAMC,cAAcyiB,GAAW,CAAEE,IAAKM,EAAUxe,IAAKqX,EAAU1b,KAAM,SACjEL,EAAAA,QAAMC,cAAc,QAAS,CAAEI,KAAM,YACjCL,EAAKlI,QAACmI,cAAcmU,GAAK,CAAE/T,KAAM,OAAS8Z,EAAQ5K,KAAKgQ,GAAWD,GAAa,CAAEC,SAAQ5D,YAAWwE,qBACxGngB,EAAAA,QAAMC,cAAc,QAAS,CAAEI,KAAM,YAAc+kB,EAAY7V,KAAKkQ,GAASzf,EAAKlI,QAACmI,cAAcmU,GAAK,CAAErP,IAAK0a,EAAIxd,IAAMkY,EAAQ5K,KAAK8L,GChEjJ,SAA2BoE,EAAKF,GACnC,IAAsB,IAAlBA,EAAO3C,OACP,OAAO,KAEX,MAAMgC,EAAY,CACdpI,MAAO+I,EAAO/I,MACdzR,IAAK,GAAG0a,EAAIxd,MAAMsd,EAAOtd,KACzB5B,KAAM,OACNuV,QAAS2J,EAAO3J,SAEpB,OAAQ5V,EAAAA,QAAMC,cAAcue,GAAMliB,OAAOC,OAAO,CAAE,EAAEqiB,GAChD5e,EAAAA,QAAMC,cAAcihB,GAAoB,MAChD,CDoDgKoE,CAAkB7F,EAAKpE,WAClL,CACD,GAAoB,IAAhByJ,EAAK1jB,OACL,OAAQpB,EAAKlI,QAACmI,cAAc6W,GAAS,CAAEkM,WAAYA,GAC/ChjB,EAAAA,QAAMC,cAAcwiB,GAAiB,CAAE/d,IAAKugB,GACxCjlB,UAAMC,cAAcyiB,GAAW,CAAEE,IAAKM,EAAUxe,IAAKqX,EAAU1b,KAAM,SACjEL,EAAAA,QAAMC,cAAc,QAAS,CAAEI,KAAM,YACjCL,EAAKlI,QAACmI,cAAcmU,GAAK,CAAE/T,KAAM,OAAS8Z,EAAQ5K,KAAKgQ,GAAWD,GAAa,CAAEC,SAAQ5D,YAAWwE,qBACxGngB,EAAAA,QAAMC,cAAc,QAAS,CAAEI,KAAM,YACjCL,EAAKlI,QAACmI,cAAcmiB,GAAkB,CAAEC,YAAalI,EAAQ/Y,QACzDpB,EAAAA,QAAMC,cAAcqiB,GAAuB,KAAMsC,EAAW1Z,MAC5DlL,EAAKlI,QAACmI,cAAcuV,GAAO,CAAEI,QAAS,KAAMF,OAAQ,UAChD1V,EAAKlI,QAACmI,cAAcnB,EAAM,CAAE/F,QAAS,iBAAmB6rB,EAAWJ,SACnEI,EAAWW,YAAevlB,EAAAA,QAAMC,cAAcnB,EAAM,CAAE/F,QAAS,oBAAsB6rB,EAAWW,kBAE5H,MAAMC,EAAa/F,IACf,MAAMgG,aAAEA,EAAe,GAAEvR,YAAEA,GAAgBuL,EACrCE,EAAWwE,GAAY1E,EAAIxd,GAAI,CAAEid,iBAAgBkF,iBAAgBC,mBACvE,OAAQrkB,EAAKlI,QAACmI,cAAcmU,GAAK9X,OAAOC,OAAO,CAAE8D,KAAM,MAAO0E,IAAK0a,EAAIxd,GAAIiS,YAAaA,EAAatM,UAAW6d,GAAgB9F,GAAWxF,EAAQ5K,KAAK8L,GEpFzJ,SAAoBoE,EAAKF,EAAQG,EAASC,GAC7C,GAAIJ,EAAO3C,OACP,OAAO,KAEX,MAAMgC,EAAY,CACdpI,MAAO+I,EAAO/I,MACdzR,IAAK,GAAG0a,EAAIxd,MAAMsd,EAAOtd,KACzB5B,KAAM,OACNuV,QAAS2J,EAAO3J,QAChB7W,KAAMwgB,EAAOxgB,MAEjB,OAAOwgB,EAAOC,WAAWC,EAAKb,EAAWc,EAASC,EACtD,CFwEwKH,CAAWC,EAAKpE,EAAKqE,EAASC,KAAa,EAEzM+F,EAAkB,CAACC,EAAWhH,KAChC,IAAIjZ,EAAIkgB,EACR,MAAMC,EAAqK,QAA5ID,EAAqF,QAA/ElgB,EAAKigB,aAA6C,EAASA,EAAUN,YAAyB,IAAP3f,OAAgB,EAASA,EAAGogB,qBAAkC,IAAPF,OAAgB,EAASA,EAAGnG,IACzME,EAAWwE,GAAYxF,EAAO,CAAEO,iBAAgBkF,iBAAgBC,mBACtE,OAAQrkB,EAAKlI,QAACmI,cAAcmU,GAAK,CAAE/T,KAAM,MAAO0E,IAAK4gB,EAAU1jB,GAAI2F,UAAWie,GAAyB1L,EAAQ5K,KAAK8L,GGxFrH,SAA0BsK,EAAWpG,EAAQI,GAChD,GAAIJ,EAAO3C,OACP,OAAO,KAEX,MAAMgC,EAAY,CACdpI,MAAO+I,EAAO/I,MACdzR,IAAK,GAAG4gB,EAAU1jB,MAAMsd,EAAOtd,KAC/B5B,KAAM,OACNuV,QAAS2J,EAAO3J,SAEpB,OAAK2J,EAAOwG,iBAGLxG,EAAOwG,iBAAiBJ,EAAW/G,EAAWe,GAF1C3f,EAAKlI,QAACmI,cAAcue,GAAMliB,OAAOC,OAAO,CAAE,EAAEqiB,GAG3D,CH0EoImH,CAAiBJ,EAAWtK,EAAKsE,KAAa,EAExKqG,EAAiBvG,IACnB,IAAI/Z,EACJ,MAAMugB,EAAa7B,aAAuD,EAASA,EAAehL,SAASqG,EAAIxd,IAC/G,OAAQjC,EAAKlI,QAACmI,cAAc,QAAS,CAAEI,KAAM,WAAY0E,IAAK0a,EAAIxd,IAC9DujB,EAAU/F,GACVwG,IAAyC,QAAzBvgB,EAAK+Z,EAAIyG,kBAA+B,IAAPxgB,OAAgB,EAASA,EAAG6J,KAAKoW,GAAcD,EAAgBC,EAAWlG,EAAIxd,OAAQ,EAqBzIkkB,EAAiBnmB,EAAAA,QAAMC,cAAcmU,GAAK,CAAE/T,KAAM,OAAS8Z,EAAQ5K,KAAKgQ,GAAWD,GAAa,CAAEC,SAAQ5D,YAAWwE,oBACrHiG,EAAqBzJ,EAAQ0J,MAAM9G,KAAaA,EAAO9R,eACvD6Y,EAAwBpH,EAAe9d,OAAS,KAAOujB,EAC7D,OAAQ3kB,EAAKlI,QAACmI,cAAc6W,GAAS,CAAEkM,WAAYA,GAC/CsD,GAA0BtmB,EAAAA,QAAMC,cAAcmhB,GAAW,CAAE/B,gBAAiBA,EAAiBgC,sBAAuBA,EAAuBrF,aAAciJ,GAAsBN,GAC/K3kB,EAAAA,QAAMC,cAAcwiB,GAAiB,CAAE/d,IAAKugB,GACxCD,GAAuBhlB,EAAKlI,QAACmI,cAAcgjB,GAAY,CAAEC,SAAUA,EAAU7B,sBAAuBA,EAAuBrF,aAAciJ,EAAoBhL,WAAYA,GAAckM,GACvLnmB,UAAMC,cAAc,MAAO,CAAEyE,IAAK2c,EAAuB5e,MAAO,CAAEnC,OAAQ,KAC1EN,UAAMC,cAAcyiB,GAAW,CAAEE,IAAKM,EAAUxe,IAAKqX,EAAU1b,KAAM,SACjEL,EAAKlI,QAACmI,cAAc,QAAS,CAAEI,KAAM,YAAc8lB,GA5B5C,MACf,MAAMI,IAAkBnC,EAExB,OAD4BmC,GAAkC,WAAjBnM,EAElC0K,EAAKvV,IAAIyW,GAEhBO,EACQvmB,EAAKlI,QAACmI,cAAc,QAAS,CAAEI,KAAM,YAAcykB,EAAKvV,KAAKkQ,IACjE,IAAI/Z,EAMJ,MAAO,CALY8f,EAAU/F,OACV2E,aAAuD,EAASA,EAAehL,SAASqG,EAAIxd,OAEhF,QAAzByD,EAAK+Z,EAAIyG,kBAA+B,IAAPxgB,OAAgB,EAASA,EAAG6J,KAAKoW,GAAcD,EAAgBC,EAAWlG,EAAIxd,QACjH,GACqC,KAG1CjC,UAAMC,cAAc,QAAS,CAAEI,KAAM,YAAcykB,EAAKvV,IAAIiW,GAAW,EAYtEgB,GACAJ,GAAuBpmB,EAAKlI,QAACmI,cAAc,QAAS,CAAEI,KAAM,YACxDL,EAAKlI,QAACmI,cAAcmU,GAAK,CAAE/T,KAAM,OAAS8Z,EAAQ5K,KAAKgQ,GIjIpE,UAAsBA,OAAEA,IAC3B,GAAIA,EAAO3C,OACP,OAAO,KAEX,MAAM6J,EAAc,CAChB1hB,IAAKwa,EAAOtd,GACZ5B,KAAM,OACNmW,MAAO+I,EAAO/I,MACdZ,QAAS2J,EAAO3J,SAEpB,OAAK2J,EAAO9R,aAGL8R,EAAO9R,aAAa8R,EAAQkH,GAFxBzmB,EAAKlI,QAACmI,cAAcue,GAAMliB,OAAOC,OAAO,CAAE,EAAEkqB,GAG3D,CJmHsFhZ,CAAa,CAAE8R,iBAAkB,EAEvHmF,GAAUgC,aAAe,CACrBld,SAAS,EACTqb,gBAAiB,EACjBvG,cAAe,WACflE,aAAc,MACd4K,oBAAoB,GAExBN,GAAUlG,KAAOA,GACjBkG,GAAUiC,WK1IH,UAAoBhK,QAAEA,EAAOiK,aAAEA,EAAYC,WAAEA,IAChD,MAAOC,EAAeC,GAAoB7gB,EAAQA,SAAC,OAC5C8gB,EAAaC,GAAkB/gB,EAAQA,UAAC,GACzCghB,EAAgBvK,EAAQpN,KAAKgQ,GAAW,CAACA,EAAOtd,GAAIsd,KACpD4H,EAAa7qB,OAAO8qB,YAAYF,GAChCG,EAAST,EAAarX,KAAK+X,GAAUA,EAAM/X,KAAKqM,GAAauL,EAAWvL,OACxE2L,EAAY,CAACC,EAAY5K,KAC3B,MAAM6K,EAAYJ,EAAOG,GAAYjY,KAAKgQ,GAAWA,EAAOtd,KACtDylB,EAAa,IAAI/K,GACvB8K,EAAU9F,SAAS/F,IACf,MAAMtB,EAAQoN,EAAW5H,WAAWP,GAAWA,EAAOtd,KAAO2Z,IACzDtB,EAAQ,IAEZoN,EAAWpN,GAAShe,OAAOC,OAAOD,OAAOC,OAAO,CAAE,EAAEmrB,EAAWpN,IAAS,CAAEsC,WAAS,IAEvFiK,EAAWa,EAAW,EAE1B,OAAQ1nB,UAAMC,cAAcD,EAAKlI,QAAC0X,SAAU,KACxCxP,EAAAA,QAAMC,cAAc+K,GAAQ,CAAEtG,IAAKqiB,EAAkB5b,UAAU,EAAM7D,QAAS,IAAM2f,GAAe,IAAS,WAC5GD,GAAgBhnB,EAAKlI,QAACmI,cAAcwF,EAAS,CAAEI,cAAeihB,EAAehhB,cAAe,IAAMmhB,GAAe,IAC7GjnB,EAAKlI,QAACmI,cAAcqN,GAAM,CAAE7K,MAAO,CAAEkF,MAAO,MACxC3H,EAAAA,QAAMC,cAAcuV,GAAO,CAAEE,OAAQ,UAAWE,QAAS,MAAQyR,EAAO9X,KAAI,CAAC+X,EAAOE,IAAgBxnB,EAAKlI,QAACmI,cAAcuV,GAAO,CAAEzQ,IAAKuiB,EAAM,GAAGrlB,GAAIwT,UAAW,aAAcE,OAAQ,SAAUC,QAAS,KAAMnT,MAAO,CAC5MklB,OAAQ,kBACRC,QAAS,IAEb5nB,EAAAA,QAAMC,cAAc+K,GAAQ,CAAEjS,QAAS,OAAQmS,KAAMlL,EAAAA,QAAMC,cAAckiB,GAAa,QACtFniB,EAAAA,QAAMC,cAAcuV,GAAO,CAAEI,QAAS,KAAMnT,MAAO,CAAEolB,KAAM,IAAOP,EAAM/X,KAAKgQ,GAAYvf,EAAKlI,QAACmI,cAAc,MAAO,CAAE8E,IAAKwa,EAAOtd,IAAMsd,EAAOzT,UAC/I9L,EAAAA,QAAMC,cAAcuV,GAAO,CAAEC,UAAW,aAAcG,QAAS,MAAQ0R,EAAM,GAAG1K,OAAU5c,EAAAA,QAAMC,cAAc+K,GAAQ,CAAEjS,QAAS,OAAQmS,KAAMlL,EAAAA,QAAMC,cAAciiB,GAAkB,MAAO5a,QAAS,IAAMigB,EAAUC,GAAY,GAAQ/kB,MAAO,CAAE1F,MAAOyB,EAAMxF,OAAOS,QAAQC,IAAIP,YAAkB6G,UAAMC,cAAc+K,GAAQ,CAAEjS,QAAS,OAAQmS,KAAMlL,EAAKlI,QAACmI,cAAcgiB,GAAe,MAAO3a,QAAS,IAAMigB,EAAUC,GAAY,YAC5b,EL+GA9C,GAAUhG,cAAgBA,GAC1BgG,GAAUrG,gBAAkBA,GAC5BqG,GAAUlZ,OAASA,GACnBkZ,GAAU7B,SAAWA,GACrB6B,GAAUnC,OAASA,GMrJnB,MAAMuF,GAAOjwB,EAAMC,QAACiwB,GAAG/vB,WAAW,CAAEC,YAAa,YAAaC,YAAa,gBAAkB,qCAAqCsG,EAAM5C,MAAMvC,SACxIiV,GAAOzW,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,YAAaC,YAAa,eAAiB,wBAAwBsG,EAAM5C,MAAMO,OAC3H6rB,GAAUnwB,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,eAAgBC,YAAa,eAAiB,oEAAoEsG,EAAM5C,MAAMvC,SAC7K4uB,GAAuBpwB,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,4BAA6BC,YAAa,eAAiB,yCAAyCsG,EAAM5C,MAAMO,OAC5K+rB,GAAOrwB,EAAMC,QAACqwB,GAAGnwB,WAAW,CAAEC,YAAa,YAAaC,YAAa,eAAiB,eAAesG,EAAM9B,KAAKe,SAAShB,wBAAwB+B,EAAM9B,KAAKe,SAASZ,wBAAwB2B,EAAM9B,KAAKe,SAASb,0BAA0B4B,EAAM9B,KAAKe,SAASX,oBAAoB0B,EAAM9B,KAAKe,SAASV,SACvS0C,GAAc5H,EAAMC,QAACswB,GAAGpwB,WAAW,CAAEC,YAAa,mBAAoBC,YAAa,eAAiB,iCAAiCsG,EAAM9B,KAAKa,KAAKd,wBAAwB+B,EAAM9B,KAAKa,KAAKV,wBAAwB2B,EAAM9B,KAAKa,KAAKX,0BAA0B4B,EAAM9B,KAAKa,KAAKT,oBAAoB0B,EAAM9B,KAAKa,KAAKR,gBCNjTnB,GAAK5C,OAAEA,IAAWwF,EACb6pB,GAAaxwB,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,gBAAkB,iDAAiD,EAAGowB,eAAc,KAAWA,EAAc,uBAAuB1sB,GAAMT,YAAc,gDAAgDS,GAAMT,iEAAiE,EAAGmtB,eAAc,KAAYA,EAAc,MAAQ,gCACpZC,GAAmB1wB,EAAAA,QAAOE,IAAIC,WAAW,CAAEC,YAAa,wBAAyBC,YAAa,eAAiB,4CAA4C0D,GAAMT,yCAAyCnC,GAAOS,QAAQE,KAAKR,YCH9NqvB,GAAa3wB,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,eAAiB,+oBCDzG,IAAIuwB,IACX,SAAWA,GACPA,EAAoB,KAAI,OACxBA,EAAkB,GAAI,IACzB,CAHD,CAGGA,KAAkBA,GAAgB,CAAA,ICA9B,MAAMC,GAAQ7wB,EAAMC,QAAC+P,MAAM7P,WAAW,CAAEC,YAAa,aAAcC,YAAa,eAAiB,6BAA6BsG,EAAM9B,KAAKtE,WAAWqE,wBAAwB+B,EAAM9B,KAAKtE,WAAWyE,wBAAwB2B,EAAM9B,KAAKtE,WAAWwE,0BAA0B4B,EAAM9B,KAAKtE,WAAW0E,oBAAoB0B,EAAM9B,KAAKtE,WAAW2E,SACpU4rB,GAAO9wB,EAAAA,QAAOkH,KAAK/G,WAAW,CAAEC,YAAa,YAAaC,YAAa,eAAiB,6BAA6BsG,EAAM/B,wBAAwB+B,EAAM5C,MAAM,kBAAkB4C,EAAM5C,MAAM,YAAY4C,EAAMxF,OAAOS,QAAQC,IAAIN,SAClOinB,GAAQxoB,EAAMC,QAACiH,KAAK/G,WAAW,CAAEC,YAAa,aAAcC,YAAa,gBAAkB,6BAA6BsG,EAAM9B,KAAK2B,MAAM5B,wBAAwB+B,EAAM9B,KAAK2B,MAAMxB,wBAAwB2B,EAAM9B,KAAK2B,MAAMzB,0BAA0B4B,EAAM9B,KAAK2B,MAAMvB,oBAAoB0B,EAAM9B,KAAK2B,MAAMtB,yEAAyEyB,EAAM5C,MAAM,uCAAuC4C,EAAMxF,OAAOa,UAAUC,IAAIT,SAClcuvB,GAAY/wB,EAAMC,QAAC0d,IAAOxd,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,gBAAkB,qBACrG+e,GAAepf,EAAMC,QAACqa,IAASna,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,gBAAkB,4CCD7G2wB,GAAcnQ,GAAehT,IACtC,IAAImC,MAAEA,EAAKuP,KAAEA,EAAI/Y,MAAEA,EAAKO,QAAEA,GAAY8G,EAAI0F,EAAa1K,EAAOgF,EAAI,CAAC,QAAS,OAAQ,QAAS,YAC7F,MAAMxN,EAAcqO,EAAAA,SAAQ,IAAMhF,EAAWmX,EAAUrF,OAAO,IAC9D,OAAKxL,EAGG7H,EAAAA,QAAMC,cAAc2oB,GAAW,CAAEhT,QAAS,KAAMF,OAAQ,WAC5D1V,UAAMC,cAAc,MAAO,KACvBD,UAAMC,cAAcuV,GAAO,CAAEC,UAAW,aAAcE,OAAQ,SAAUC,QAAS,MAC7E5V,EAAKlI,QAACmI,cAAcyoB,GAAO,CAAEjR,QAASvf,GAAe2P,GACrDjJ,GAAYoB,EAAKlI,QAACmI,cAAcgX,GAAc,CAAEva,KAAMkC,GAClDoB,UAAMC,cAAciX,GAAU,CAAEvP,MAAOnJ,EAAM5C,MAAMvC,KAAMiH,OAAQ9B,EAAM5C,MAAMvC,KAAM0D,MAAOyB,EAAMxF,OAAOS,QAAQC,IAAIN,UAC3Hge,GAAQpX,EAAKlI,QAACmI,cAAc0oB,GAAM,KAAMvR,IAC5CpX,EAAAA,QAAMC,cAAcyY,EAAWpc,OAAOC,OAAO,CAAE0F,GAAI/J,EAAa4wB,WAAYzqB,GAAS+M,IACrF/M,GAAS2B,EAAKlI,QAACmI,cAAcogB,GAAO,KAAMhiB,IAVnC2B,UAAMC,cAAcyY,EAAWpc,OAAOC,OAAO,CAAEusB,WAAYzqB,GAAS+M,GAUxB,ECnBrD2d,GAAe,EAAGD,WAAUE,eAAgBpG,EAAAA,GAAI,oBAAkC,OAAdoG,EAAqB,MAAQ,kQAAkQF,GACrW,mJAUSpR,GAAQ7f,EAAMC,QAAC6f,MAAM3f,WAAW,CAAEC,YAAa,aAAcC,YAAa,gBAAkB,eAAesG,EAAM/B,mKAAmK,EAAGusB,gBAChS,IAAI1oB,EAAS,OACTzD,EAAW,OAKf,MAJkB,OAAdmsB,IACA1oB,EAAS,OACTzD,EAAW,QAER,mBACKyD,wBACGzD,UACd,KACAksB,yKACQE,GAAWpxB,EAAAA,QAAOqxB,SAASlxB,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,gBAAkB,yGAAyG6wB,KCpBrNI,GAAe,sBCHRC,GAAYP,GDIA5d,EAAUA,YAAC,CAACvF,EAAIhB,KACrC,IAAIzC,GAAEA,EAAE2F,UAAEA,EAASmP,SAAEA,GAAW,EAAK+R,SAAEA,EAAQjP,IAAEA,EAAGD,IAAEA,EAAGyP,UAAEA,GAAY,EAAKhW,KAAEA,EAAI2E,SAAEA,EAAQsR,QAAEA,EAAOrrB,YAAEA,EAAW6mB,KAAEA,EAAO,IAAGrb,KAAEA,EAAOgf,GAAcpvB,KAAIkwB,KAAEA,EAAI9gB,KAAEA,EAAO,OAAM3M,MAAEA,EAAK0tB,WAAEA,GAAa,GAAU9jB,EAAI0F,EAAa1K,EAAOgF,EAAI,CAAC,KAAM,YAAa,WAAY,WAAY,MAAO,MAAO,YAAa,OAAQ,WAAY,UAAW,cAAe,OAAQ,OAAQ,OAAQ,OAAQ,QAAS,eACxY,MAAMwS,EAAe1E,eAAa1O,IAC9B,IAAKkT,EACD,OACJ,MAAMyR,EAAW3kB,EAAMqT,cAAcrc,MACrC,GAAiB,KAAb2tB,EAEA,YADAzR,EAASyR,GAGb,GAAa,WAAThhB,EAEA,YADAuP,EAASyR,GAGD,IAAIC,OAAOP,IACdQ,KAAKF,IAGdzR,EAASyR,EAAS,GACnB,CAACzR,EAAUvP,IACRvQ,EAAc+J,QAA+BA,EAAKV,EAAW,aACnE,MAAa,SAATkH,GAAmB4gB,EACXrpB,EAAAA,QAAMC,cAAcgpB,GAAU3sB,OAAOC,OAAO,CAAEqL,UAAWA,EAAWmP,SAAUA,EAAU+R,SAAUA,EAAU7mB,GAAI/J,EAAamb,KAAMA,EAAM2E,SAAUE,EAAcja,YAAaA,EAAa6mB,KAAMA,EAAMhpB,MAAOA,EAAO0tB,WAAYA,EAAY9kB,IAAKA,GAAO0G,IAE7PpL,EAAKlI,QAACmI,cAAcyX,GAAOpb,OAAOC,OAAO,CAAEqL,UAAWA,EAAWmP,SAAUA,EAAU+R,SAAUA,EAAU7mB,GAAI/J,EAAa8wB,UAAWvf,EAAMoQ,IAAKA,EAAKD,IAAKA,EAAKvG,KAAMA,EAAM2E,SAAUE,EAAcja,YAAaA,EAAasrB,KAAMA,EAAM9gB,KAAMA,EAAM3M,MAAOA,EAAO0tB,WAAYA,EAAY9kB,IAAKA,GAAO0G,GAAc,KC3BjUge,GAAUnxB,YAAc,YCGxB,MAAM0X,GAAY9X,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,wDAC5Gkc,GAAMvc,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,WAAYC,YAAa,eAAiB,0DAChG0xB,GAAkB/xB,EAAMC,QAACsxB,IAAWpxB,WAAW,CAAEC,YAAa,uBAAwBC,YAAa,eAAiB,sEAAsEsG,EAAMxF,OAAOS,QAAQC,IAAIP,aACnN0wB,GAAehyB,EAAMC,QAACkT,IAAQhT,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,eAAiB,8BAA8BsG,EAAMxF,OAAOS,QAAQC,IAAIP,YAC1JtB,EAAAA,QAAOiH,GAAM9G,WAAW,CAAEC,YAAa,aAAcC,YAAa,gBAAkB,GACpFL,EAAAA,QAAOkH,KAAK/G,WAAW,CAAEC,YAAa,aAAcC,YAAa,gBAAkB,6BAA6BsG,EAAM9B,KAAK2B,MAAM5B,wBAAwB+B,EAAM9B,KAAK2B,MAAMxB,wBAAwB2B,EAAM9B,KAAK2B,MAAMzB,0BAA0B4B,EAAM9B,KAAK2B,MAAMvB,oBAAoB0B,EAAM9B,KAAK2B,MAAMtB,yEAAyEyB,EAAM5C,MAAM,uCAAuC4C,EAAMxF,OAAOa,UAAUC,IAAIT,SAC3bxB,EAAMC,QAACiH,KAAK/G,WAAW,CAAEC,YAAa,YAAaC,YAAa,eAAiB,6BAA6BsG,EAAM/B,wBAAwB+B,EAAM5C,MAAM,kBAAkB4C,EAAM5C,MAAM,YAAY4C,EAAMxF,OAAOS,QAAQC,IAAIN,SCJ5N,MAAC0wB,GAAkBjB,IAAYnjB,IACvC,IAAI+D,KAAEA,EAAOgf,GAAcpvB,KAAI0wB,mBAAEA,EAAkBC,kBAAEA,EAAiBC,mBAAEA,EAAkBriB,UAAEA,EAAStH,OAAEA,EAAMqH,MAAEA,EAAKvG,OAAEA,EAAM1F,KAAEA,GAASgK,EAAIwkB,EAAOxpB,EAAOgF,EAAI,CAAC,OAAQ,qBAAsB,oBAAqB,qBAAsB,YAAa,SAAU,QAAS,SAAU,SACjR,OAAQ1F,EAAKlI,QAACmI,cAAc0P,GAAW,CAAE/H,UAAWA,GAChD5H,UAAMC,cAAcmU,GAAK,KACrBpU,UAAMC,cAAcmpB,GAAW9sB,OAAOC,OAAO,CAAEyb,SAAUiS,EAAoBxgB,KAAMA,EAAM4J,KAAM,SAAU5K,KAAM,SAAUxK,YAAa,IAAKnC,MAAOsF,GAAU8oB,IAC5JlqB,EAAAA,QAAMC,cAAc2L,GAAW,CAAEtL,OAAQ9B,EAAM5C,MAAMvC,KAAMsO,MAAOnJ,EAAM5C,MAAMvC,OAC9E2G,UAAMC,cAAcmpB,GAAW9sB,OAAOC,OAAO,CAAEyb,SAAUgS,EAAmBvgB,KAAMA,EAAM4J,KAAM,QAAS5K,KAAM,SAAUxK,YAAa,IAAKnC,MAAO6L,GAASuiB,IACzJlqB,EAAAA,QAAMC,cAAc2L,GAAW,CAAEtL,OAAQ9B,EAAM5C,MAAMvC,KAAMsO,MAAOnJ,EAAM5C,MAAMvC,OAC9E2G,UAAMC,cAAcuoB,GAAY,KAC5BxoB,UAAMC,cAAcmpB,GAAW9sB,OAAOC,OAAO,CAAEyb,SAAU+R,EAAoBtgB,KAAMA,EAAM4J,KAAM,SAAU5K,KAAM,SAAUxK,YAAa,IAAKnC,MAAOwE,GAAU4pB,IAC5JlqB,UAAMC,cAAc+K,GAAQ,CAAEvB,KAAMA,GAAQ/N,KAAU,IAEtEouB,GAAgB7xB,YAAc,kBChBlB,MAACkyB,GAAkB,CAACC,EAAQzlB,KACpC,MAAMD,EAAMgM,SAAO,MACb2Z,EAAiB7W,eAAa5S,IAClB,WAAVA,EAAEmE,MACFJ,SAAkDA,IACrD,GACF,CAACA,IACE2lB,EAAgB9W,eAAa5S,IAC1B8D,EAAIkM,QAAQC,SAASjQ,EAAEkQ,SACxBnM,SAAkDA,GACrD,GACF,CAACA,IAYJ,OAXA8B,EAAAA,WAAU,KACN,GAAI2jB,EAGA,OAFA7nB,SAAS6E,iBAAiB,QAASkjB,GACnC/nB,SAAS6E,iBAAiB,QAASijB,GAC5B,KACH9nB,SAAS8E,oBAAoB,QAASijB,GACtC/nB,SAAS8E,oBAAoB,QAASgjB,EAAe,CAG7C,GACjB,CAACC,EAAeD,EAAgBD,IAC5B1lB,CAAG,EC1BP,SAAS6lB,KACZ,MAAOpa,EAAoBqa,GAAyBtkB,EAAQA,UAAC,GACvDukB,EAA2BjX,eAAY,IAAMgX,GAAuBra,IAAqB,CAACA,EAAoBqa,IAC9GE,EAAgBlX,EAAAA,aAAY,IAAMgX,GAAsB,IAAQ,CAACA,IACvE,MAAO,CACHra,qBACAsa,2BACAD,wBACAE,gBAER,CCTO,MAAMC,GAAsB3qB,EAAKlI,QAAC8yB,cAAc,CACnDC,kBAAkB,EAClBC,eAAe,ICHP,MAACC,GAAW,CAACC,GAAe,KACpC,MAAOC,EAAWC,GAAgBhlB,EAAQA,SAAC8kB,GAG3C,MAAO,CAACC,EAFYzX,EAAAA,aAAY,IAAM0X,GAAa,IAAO,CAACA,IACvC1X,EAAAA,aAAY,IAAM0X,GAAa,IAAQ,CAACA,IAChB,ECAnCC,GAAoBzmB,IAC7B,MAAO0mB,EAAeC,GAAoBnlB,EAAQA,UAAC,IAC5ColB,EAAYC,GAAiBrlB,EAAQA,UAAC,GAC7CO,EAAAA,WAAU,KACN,IAAK/B,EACD,OACJ,MAAMqC,EAAiB,IAAIC,gBAAe,KACtC,MAAMwkB,EAAc9mB,EAAI+mB,aAAe/mB,EAAIgnB,aAC3CL,EAAiBG,EAAY,IAIjC,OAFAzkB,EAAeE,QAAQvC,GAEhB,KAAQqC,EAAeG,YAAY,CAAG,GAC9C,CAACxC,IAOJ,MAAO,CAAE0mB,cAAeA,IAAkBE,EAAYK,SANpC7mB,IACd,IAAKJ,EACD,OACJ,MAAMknB,UAAEA,EAASH,aAAEA,EAAYC,aAAEA,GAAiB5mB,EAAMgM,OACxDya,EAAcE,EAAeG,EAAYF,GAAgB,EAAE,EAEC,ECjB9D/b,GAAY9X,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,8EAA8Ec,EAAOS,QAAQE,KAAKN,mEAAmEuC,EAAMvC,eAAeuC,EAAMvC,SAC5SwyB,GAAoBh0B,EAAMC,QAACgH,GAAM9G,WAAW,CAAEC,YAAa,yBAA0BC,YAAa,eAAiB,oBACnH4zB,GAAaj0B,EAAMC,QAAC+zB,IAAmB7zB,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,cAAgB,oBACjH6zB,GAAWl0B,EAAAA,QAAO8T,IAAe3T,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,eAAiB,oCAAqC6H,GAAWA,EAAMiT,WAAa,SAAW,+BACxLgZ,GAAkBn0B,EAAMC,QAAC8T,IAAW5T,WAAW,CAAEC,YAAa,uBAAwBC,YAAa,eAAiB,0CACpHipB,GAAUtpB,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,eAAgBC,YAAa,gBAAkB,qFACzGsT,GAAS3T,EAAAA,QAAOD,GAAeI,WAAW,CAAEC,YAAa,cAAeC,YAAa,gBAAkB,2HAA2Hc,EAAOS,QAAQE,KAAKN,kBAAkB,EAAG0D,WAAYA,WAAenB,EAAM,aAAaA,EAAM,yBCT/TqwB,GAAsBzqB,IAAY,CACpC0qB,kBAAmB1qB,EAAS,GAAGA,6BAA+B+J,EAC9DoH,UAAWnR,EAAS,GAAGA,mBAAqB+J,EAC5C4gB,MAAO3qB,EAAS,GAAGA,eAAiB+J,ICL3BvC,GAAOnR,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,YAAaC,YAAa,eAAiB,6CAA6C,EAAGykB,aAAcA,oBAA0B,EAAG/G,UAAU,UAAcA,EAAUha,EAAMga,GAAW,KCFhPwW,GAAoBrsB,GAAWC,UAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAEoL,MAAO,KAAMrH,OAAQ,KAAMJ,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GACzLC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,0NAA2NN,KAAM,aCDnSwP,GAAY9X,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,GACjGm0B,GAAcx0B,EAAAA,QAAOy0B,IAAIt0B,WAAW,CAAEC,YAAa,mBAAoBC,YAAa,eAAiB,gCAAgC,EAAGq0B,oBAAsBA,EAAiB,UAAY,aAC3LC,GAAwB30B,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,6BAA8BC,YAAa,gBAAkB,2CAC1Hu0B,GAAe50B,EAAMC,QAACw0B,IAAIt0B,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,eAAiB,+CCJvG+zB,GAAsBzqB,IAAY,CAC3CmR,UAAWnR,EAAS,GAAGA,yBAA2B+J,EAClDmhB,MAAOlrB,EAAS,GAAGA,eAAiB+J,EACpCtN,YAAauD,EAAS,GAAGA,2BAA6B+J,EACtDohB,sBAAuBnrB,EAAS,GAAGA,iCAAmC+J,ICDpEqhB,GAAW,CAAEjlB,MAAO,GAAIrH,OAAQ,IACzBikB,GAAoB,CAC7BrZ,KAAMlL,EAAAA,QAAMC,eCJaF,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GAC1JC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,8WAA+WN,KAAM,mBDGxZ7D,OAAOC,OAAO,CAAA,EAAIqwB,KAC1D9gB,MAAO,iBAEE+gB,GAAoB,CAC7B3hB,KAAMlL,EAAAA,QAAMC,eERSF,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GACtJC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,8pBAA+pBN,KAAM,mBFO5sB7D,OAAOC,OAAO,CAAA,EAAIqwB,KACtD9gB,MAAO,4CACPghB,SAAU,2FAEP,IAAIC,IACX,SAAWA,GACPA,EAAsB,MAAI,QAC1BA,EAAuB,OAAI,SAC3BA,EAAoB,IAAI,MACxBA,EAAqB,KAAI,MAC5B,CALD,CAKGA,KAAmBA,GAAiB,CAAA,IGhBvC,WAAQrwB,GAAId,MAAEA,IAAU4C,GAClBtF,KAAEA,IAASsF,EAAMxF,OAAOa,WACxBF,KAAEA,IAAS6E,EAAMxF,OAAOS,SACxBe,UAAEA,IAAcgE,EAAMxF,OAAOuB,OAC7ByyB,GAAoB,2KAgBbC,GAAiBp1B,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,sBAAuBC,YAAa,eAAiB,sDAC3G4e,GAAUjf,EAAAA,QAAOE,IAAIC,WAAW,CAAEC,YAAa,eAAgBC,YAAa,eAAiB,yBAA0B6H,GAAWA,EAAMmtB,eAAiB,SAAW,mEAAoEvzB,GAAKL,gCAAgCK,GAAKL,QAAQ,EAAG6zB,mBAAoBA,EACxT,gMAUc3yB,GAAUE,kFAIVF,GAAUC,kDAIxB,MAAM,EAAGyyB,iBAAgBE,6BAA4BC,4BAA2BnT,oBAAqBgT,EACrG,GACA,sBACaE,+BACAA,yEAGXJ,gBAEA9S,IAAmB6S,GAAeO,QAAUpT,IAAmB6S,GAAeQ,IAnCvD,6DAqCrB,wCAGcF,oCACAA,yEAGhBL,gBAEA9S,IAAmB6S,GAAeS,OAAStT,IAAmB6S,GAAeO,OA3CxD,8DA6CnB,oBAGGG,GAAkB51B,EAAMC,QAACgf,IAAS9e,WAAW,CAAEC,YAAa,uBAAwBC,YAAa,gBAAkB,oBAAoByB,GAAKL,0BAC5Io0B,GAAO71B,EAAMC,QAAC61B,MAAM31B,WAAW,CAAEC,YAAa,YAAaC,YAAa,eAAiB,0BACzF6U,GAAOlV,EAAAA,QAAO+1B,MAAM51B,WAAW,CAAEC,YAAa,YAAaC,YAAa,gBAAkB,MAAM,EAAG21B,uBAAwBA,uDAAuEl0B,GAAKN,8GAChMxB,EAAAA,QAAOi2B,MAAM91B,WAAW,CAAEC,YAAa,YAAaC,YAAa,gBAAkB,yBAAyByB,GAAKR,qDAAqDD,GAAKG,SACxL,MAAM+a,GAAMvc,EAAAA,QAAO2qB,GAAGxqB,WAAW,CAAEC,YAAa,WAAYC,YAAa,eAAiB,iCAAiC,EAAGgc,iBAAkBA,GACnJ,kLAQsBA,oBAGbsK,GAAO3mB,EAAAA,QAAO4mB,GAAGzmB,WAAW,CAAEC,YAAa,YAAaC,YAAa,eAAiB,qDAAqD,EAAGse,WAAYA,GAAS,6CAA6C9Z,GAAKc,UAAUf,wBAAwBC,GAAKc,UAAUX,wBAAwBH,GAAKc,UAAUZ,oBAAoBF,GAAKc,UAAUT,qBAAqBnB,GAAMvC,cAAc,EAAG00B,UAAYA,EAAO,OAAS,uCACxZC,GAAan2B,EAAMC,QAAC0mB,IAAMxf,MAAM,CACzClG,GAAI,OACLd,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,gBAAkB,4CAA4CyB,GAAKL,oBAAoBoD,GAAKiB,cAAclB,wBAAwBC,GAAKiB,cAAcd,wBAAwBH,GAAKiB,cAAcf,oBAAoBF,GAAKiB,cAAcZ,uFAAuFpD,GAAKP,UAC1X60B,GAAe,CACjB7Q,KAAM,aACN/G,OAAQ,SACR2L,MAAO,YAEEkM,GAAmBr2B,EAAAA,QAAOE,IAAIC,WAAW,CAAEC,YAAa,wBAAyBC,YAAa,eAAiB,mDAAmD,EAAGse,WAAaA,EAAQyX,GAAazX,GAAS,+CAChN2X,GAAQt2B,EAAAA,QAAO8qB,MAAM3qB,WAAW,CAAEC,YAAa,aAAcC,YAAa,gBAAkB,4CAA4C,EAAGk2B,mBAAqBA,EAAgB,QAAU,UAAW,EAAGC,aAAcA,GAC/N,WACIthB,oDACkBpT,GAAKR,oDAEE,EAAGm1B,kBAAmBA,GACnD,mEAGK,EAAGC,YAAaA,GACrB,WACIP,SAAiBA,qDAIZthB,GAAS7U,EAAAA,QAAOi2B,MAAM91B,WAAW,CAAEC,YAAa,cAAeC,YAAa,eAAiB,MAAM,EAAG21B,uBAAwBA,QAAwBrP,2BAA6B7kB,GAAKL,yBAAyBK,GAAKR,wBAAwByC,GAAMvC,uBAAuBuC,GAAMvC,0BACjRm1B,GAAsB32B,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,2BAA4BC,YAAa,eAAiB,oDACrHu2B,GAAkB52B,EAAMC,QAACq2B,IAAOn2B,WAAW,CAAEC,YAAa,uBAAwBC,YAAa,eAAiB,GC3GvHw2B,GAAyB72B,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,8BAA+BC,YAAa,gBAAkB,uFAAwF6H,GAAUA,EAAMO,6BAC/OquB,GAAmB92B,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,wBAAyBC,YAAa,gBAAkB,kHAAkHsG,EAAMxF,OAAOS,QAAQE,KAAKN,0DACvQu1B,GAAY/2B,EAAMC,QAACgH,GAAM9G,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,mBACnG22B,GAAeh3B,EAAMC,QAACgH,GAAM9G,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,eAAiB,kBCLlG42B,GAAgB,EAAGxuB,SAAQ4K,OAAMY,QAAOghB,cAAgB9sB,EAAAA,QAAMC,cAAcyuB,GAAwB,CAAEpuB,OAAQA,GACvHN,EAAAA,QAAMC,cAAc0uB,GAAkB,KAAMzjB,GAC5ClL,EAAKlI,QAACmI,cAAc2uB,GAAW,CAAE71B,QAAS,gBAAkB+S,GAC5DghB,GAAY9sB,EAAAA,QAAMC,cAAc4uB,GAAc,CAAE91B,QAAS,oBAAsB+zB,ICFtEiC,GAAal3B,EAAMC,QAACa,OAAOX,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,gBAAkB,2NAA2NsG,EAAM5C,MAAMvC,sBAAsBmF,EAAMvD,OAAO5B,gDAAgDmF,EAAMxF,OAAOa,UAAUX,KAAKC,aCGpc61B,GAAkBn3B,EAAAA,QAAOk3B,IAAY/2B,WAAW,CAAEC,YAAa,uBAAwBC,YAAa,gBAAkB,SAASsG,EAAM9B,KAAKoB,KAAKf,yBAAyByB,EAAM9B,KAAKoB,KAAKd,kBCDxLmkB,GAAUtpB,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,eAAgBC,YAAa,gBAAkB,sDCF9FyB,KAAEA,IAAS6E,EAAMxF,OAAOS,QACxBw1B,GAAyBp3B,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,8BAA+BC,YAAa,eAAiB,0BAC3Hg3B,GAA2Br3B,EAAAA,QAAOE,IAAIC,WAAW,CAAEC,YAAa,gCAAiCC,YAAa,eAAiB,+EAA+E,EAAGi3B,aAAY,KAAYA,EAAY,KAAO,6KAA8Kx1B,GAAKN,YAAYM,GAAKL,aAAaK,GAAKN,2KAC3c+1B,GAAkB,EAAGD,YAAW1sB,WAAazC,UAAMC,cAAcgvB,GAAwB,CAAExsB,MAAOA,GAC3GzC,EAAKlI,QAACmI,cAAcivB,GAA0B,CAAEC,UAAWA,KCHlDE,GAAgB3pB,IACzB,IAAIjD,MAAEA,GAAUiD,EAAI0F,EAAa1K,EAAOgF,EAAI,CAAC,UAC7C,OAAQ1F,EAAAA,QAAMC,cAAcue,GAAMliB,OAAOC,OAAO,CAAE,EAAE6O,GAChDpL,EAAKlI,QAACmI,cAAcmvB,GAAiB,CAAE3sB,MAAOA,IAAW,EAEjE4sB,GAAa3I,aAAe,CACxBjkB,MAAO,CAAE,GCTN,MCGM6sB,GAAe,EAAGhQ,eAAcvD,WAAUwT,aAAYnB,gBAAeoB,mBAC9E,IAAI9pB,EACJ,MAAO+pB,EAAkBC,GAAuBxpB,EAAQA,SAAC,OACnDob,SAAEA,GDNmB,EAACvF,EAAU4T,KACtC,MAAOrO,EAAUC,GAAerb,EAAQA,UAAC,GACnC0pB,EAAqBpc,EAAWA,aAAC,EAAG4C,MAAKyZ,aAC3C,IAAIC,EAASxO,EAETwO,EADA1Z,IAAQuZ,GAAa,IAAME,EAAS,GAC1BvO,GAAkBwO,GAGnBxO,GAAmBwO,EAE5BA,IAAWxO,GACXC,EAAYuO,EAAO,GACxB,CAACxO,EAAUqO,IAad,OAZAlpB,EAAAA,WAAU,KACN,MAAMklB,EAAW,KACb,IAAIjmB,EACAqW,EAASnL,SACTgf,EAA+C,QAA3BlqB,EAAKqW,EAASnL,eAA4B,IAAPlL,OAAgB,EAASA,EAAG6W,wBACtF,EAGL,OADApV,OAAOC,iBAAiB,SAAUukB,GAC3B,KACHxkB,OAAOE,oBAAoB,SAAUskB,EAAS,CACjD,GACF,CAACiE,EAAoB7T,IACjB,CAAEuF,WAAU,ECnBEyO,CAAgBhU,EAAU1X,SAAmG,iBAAlFmrB,aAAmD,EAASA,EAAapZ,KAAoBoZ,aAAmD,EAASA,EAAapZ,IAAM,GAAGoZ,aAAmD,EAASA,EAAapZ,MAAO,KAEzT4Z,IAA+C,QAA7BtqB,EAAK6pB,EAAW3e,eAA4B,IAAPlL,OAAgB,EAASA,EAAG6W,wBAAwB5U,QAAU,GAAK,EAGhIsoB,EAASA,UAACV,GACV,MAAMW,EAAgBxrB,IAClB,IAAIgB,EACJ,MAAM+X,GAA4C,QAA7B/X,EAAK6pB,EAAW3e,eAA4B,IAAPlL,OAAgB,EAASA,EAAG+X,aAAe,EACjG/Y,EAEAA,EAAI+Y,WAAaA,EAGjBgS,IACAA,EAAiBhS,WAAaA,EAAU,EAGhD,OADAyS,IACO5O,EAAYthB,EAAAA,QAAMC,cAAcuuB,GAAqB,CAAE9pB,IAAMA,IAC5DgrB,EAAoBhrB,GACpBwrB,EAAaxrB,EAAI,EAClBjC,MAAOnG,OAAOC,OAAO,CAAEoL,MAAOqoB,GAAgBR,IACjDxvB,EAAAA,QAAMC,cAAcwuB,GAAiB,CAAEhsB,MAAO,CAAE0tB,YAAa/B,EAAgB,QAAU,SAAY9O,MAAoB,IAAI,EC7BtH8Q,GAAyCvC,IAClD,MAAM1nB,EAAS,GAQf,OAPA0nB,EAAkBlM,SAAQ,EAAGrH,QAAO7X,WAAY0D,EAAOkqB,KAAK,qBACpC9kB,IAAf9I,EAAM2a,KAAqB,YAAc,oBAAoB3b,KAAK6uB,IAAIhW,kDAE1D/O,IAAf9I,EAAM2a,KAAqB,OAAS,iBAA2B7R,IAAf9I,EAAM2a,KAAqB3a,EAAM2a,KAAO3a,EAAMuf,8BACrFvf,EAAMW,4BAGd+C,EAAOzC,KAAK,OAAO,ECLjB6sB,GAAsB7qB,IAC/B,IAAIjD,MAAEA,EAAKkF,MAAEA,EAAKwnB,UAAEA,GAAczpB,EAAI0F,EAAa1K,EAAOgF,EAAI,CAAC,QAAS,QAAS,cACjF,OAAQ1F,UAAMC,cAAc+tB,GAAY1xB,OAAOC,OAAO,GAAI6O,EAAY,CAAE3I,MAAO,CAAEkF,WAC7E3H,UAAMC,cAAcmvB,GAAiB,CAAE3sB,MAAOA,EAAO0sB,UAAWA,IAAe,ECN1EqB,GAAsBzwB,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GAChKC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,sBAAuBN,KAAM,YACxGH,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,sBAAuBN,KAAM,aCF/FswB,GAAuB1wB,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GACjKC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,sBAAuBN,KAAM,YACxGH,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,sBAAuBN,KAAM,aCc/FuwB,GAAe,IAAO1wB,EAAAA,QAAMC,cAAcsb,GAAiB,CAAE5T,MAAOnJ,EAAM5C,MAAMvC,KAAMiH,OAAQ9B,EAAM5C,MAAMvC,KAAM0D,MAAO,cACvH4zB,GAAc,IAAO3wB,EAAAA,QAAMC,cAAcuwB,GAAoB,CAAE7oB,MAAOnJ,EAAM5C,MAAMvC,KAAMiH,OAAQ9B,EAAM5C,MAAMvC,KAAM0D,MAAO,cACzH6zB,GAAe,IAAO5wB,EAAAA,QAAMC,cAAcwwB,GAAqB,CAAE9oB,MAAOnJ,EAAM5C,MAAMvC,KAAMiH,OAAQ9B,EAAM5C,MAAMvC,KAAM0D,MAAO,cAM3H8zB,GAAkB,EAAGC,cAAa,EAAOzC,WAAU,EAAME,UAAS,EAAOpB,iBAAgB,EAAO4D,UAASjM,OAAMU,YAAWE,kBAAiBtB,iBAAgB4M,mBAAkBC,kBAAiBC,yBAAwBC,2BAA0B,EAAOjS,iBAAgBkS,+BAA8B9S,gBAAgB,WAAY+S,yBAAwBC,eAAcC,gBAAepR,eAAcqR,WAAU,EAAOrC,aAAY,EAAOsC,qBAAqB,EAAGC,kBAAiB,EAAMC,oBAAmBC,sBAAqBC,6BAA6B,IAAKC,0BAAyBC,4BACnkB,MAAMC,EAAmBlB,EAAaha,GAAU2W,GAC1CwE,IAAUnN,GAAuB,IAAhBA,EAAK1jB,OACtBgtB,EAAgB3qB,QAAQquB,GAA2BC,GACnDG,GAA4BJ,IAA4BC,EACxDhW,EAAWrL,SAAO,MAClB6e,EAAa7e,SAAO,OAEnBwJ,EAAgB8D,GAAqB9X,EAAAA,SAAS6mB,GAAe9wB,MACpEwK,EAAAA,WAAU,KACN,IAAIf,EACJ,IAAIysB,EAAW,KACf,MAAMC,EAAe,KACjB,IAAK7C,EAAW3e,SAAWshB,EACvB,OACJ,MAAMG,EAAK9C,EAAW3e,QAChBsN,EAAcmU,EAAGnU,YAAc,GAC/BT,WAAEA,GAAe4U,GACjB1qB,MAAEA,GAAU0qB,EAAG9V,wBACf+V,EAAc7U,EAAa9V,EAC7BuW,IAAgBvW,EAChBqW,EAAkB+O,GAAe9wB,MACb,IAAfwhB,EACLO,EAAkB+O,GAAeS,OAC5B/P,EAAa,GAAK6U,EAAcpU,EACrCF,EAAkB+O,GAAeO,QAC5BgF,IAAgBpU,GACrBF,EAAkB+O,GAAeQ,IAAI,EAO7C,OALIgC,EAAW3e,UACXuhB,EAAW5C,EAAW3e,QACtBwhB,IAC8B,QAA7B1sB,EAAK6pB,EAAW3e,eAA4B,IAAPlL,GAAyBA,EAAG0B,iBAAiB,SAAUgrB,IAE1F,KACHD,SAAoDA,EAAS9qB,oBAAoB,SAAU+qB,EAAa,CAC3G,GACF,CAACrW,EAAUmW,IACd,MAAMK,EAAoB/e,eAAa7L,GACd,iBAAVA,GAEPhB,QAAQtI,MAAM,uFACP,WAEGkN,IAAV5D,GAEAhB,QAAQtI,MAAM,6GACP,MAEJsJ,GACR,IACG6qB,EAAiChf,EAAWA,aAAC,CAAC8G,EAAOlS,EAAQ4J,KAAU,CACzEsI,MAAgB,SAATtI,EAAkBsI,GAASA,EAClC7X,MAAO,CACH0a,SAAU,SACVnL,CAACA,GAAO5J,EACRhF,OAAQ,MAEZ,IACEqvB,EAA4Bjf,EAAAA,aAAY,KAC1C,IAAKud,GAAW5B,EACZ,OAAO,KACX,MAAMuD,EAAe,GACfC,EAAa,GACnB,IAAIC,EAAmB,EACnBC,EAAiB,EACrB,GAAIf,EAAyB,CACrB5S,IACAwT,EAAarC,KAAKmC,EAA+B,EAAGI,EAAkB,SACtEA,GA9DiB,IAgErB,IAAK,IAAI/2B,EAAI,EAAGA,EAAIi2B,EAAyBj2B,GAAK,EAAG,CACjD,MAAMi3B,EAAcP,EAAkBxB,EAAQl1B,GAAG8L,OAC7CmrB,IACAJ,EAAarC,KAAKmC,EAA+BtT,EAAiBrjB,EAAI,EAAIA,EAAI,EAAG+2B,EAAkB,SACnGA,GAAoBE,EAE3B,CACJ,CACD,GAAIf,EACA,IAAK,IAAIl2B,EAAI,EAAGA,EAAIk2B,EAAuBl2B,GAAK,EAAG,CAC/C,MAAMi3B,EAAcP,EAAkBxB,EAAQvW,OAAO3e,EAAI,GAAG,GAAG8L,OAC3DmrB,IACAH,EAAWtC,KAAKmC,EAA+B32B,EAAI,EAAGg3B,EAAgB,UACtEA,GAAkBC,EAEzB,CAEL,OAA4B,IAAxBJ,EAAatxB,QAAsC,IAAtBuxB,EAAWvxB,OACjC,KACJ,IAAIsxB,KAAiBC,EAAW,GACxC,CACCxD,EACAoD,EACAR,EACAS,EACAzB,EACAe,EACA5S,IAEE2O,EAAoBtnB,EAAAA,SAAQ,IAAMksB,KAA6B,CAACA,IAChEM,EAAkBvf,EAAAA,aAAY,CAACqE,EAAS4H,KAC1C,IAAKP,IAAmBmS,EACpB,OACJ,GAAIxZ,EACA,MAAsB,WAAlByG,OACA+S,EAAuB,CAAC5R,EAAIxd,UAGhCovB,EAAuB,IAAInS,EAAgBO,EAAIxd,KAGnD,MAAM+wB,EAAoB,IAAI9T,GACxB5E,EAAQ0Y,EAAkBlT,WAAW7d,GAAOA,IAAOwd,EAAIxd,KAC7D+wB,EAAkBjT,OAAOzF,EAAO,GAChC+W,EAAuB2B,EAAkB,GAC1C,CAAC3B,EAAwBnS,EAAgBZ,IACtC2U,EAAkBzf,EAAAA,aAAY,KAChC,IAAK0L,IAAmBmS,EACpB,OACJ,GAAInS,EAAe9d,SAAW0jB,EAAK1jB,OAE/B,YADAiwB,EAAuB,IAG3B,MAAMxR,EAASiF,EAAKvV,KAAKkQ,GAAQA,EAAIxd,KACrCovB,EAAuBxR,EAAO,GAC/B,CAACwR,EAAwBvM,EAAM5F,IAC5BgU,EAA4B1f,eAAaoI,IAC3C,QAAqBrQ,IAAjB+lB,QAA+C/lB,IAAjB4U,EAC9B,OACJ,IAAIgT,EAAe7B,EACf8B,EAAgB,YACE,cAAlB7B,IACA6B,EAAgB,cAEhBxX,IAAa0V,IACb6B,EAAevX,EACfwX,EAAgB,aAEpBjT,EAAagT,EAAcC,EAAc,GAC1C,CAACjT,EAAcmR,EAAcC,IAC1B8B,EAAmB7f,EAAAA,aAAY,CAAC/H,EAAQhJ,KAC1C,IAAImF,EAAY,GACZN,EAAU,OACVgsB,EAAWtzB,EAAKlI,QAACmI,cAAcywB,GAAc,MACjD,MAAM9xB,QAAEA,EAAO4X,MAAEA,EAAKtL,KAAEA,EAAIY,MAAEA,EAAKsU,SAAEA,EAAQne,GAAEA,GAAOwJ,EAClD2U,IACAxY,EAAY,WACZN,EAAU,IAAM4rB,EAA0BjxB,GACtCqvB,IAAiBrvB,IACjBqxB,EAA6B,cAAlB/B,EAAgCvxB,EAAAA,QAAMC,cAAc0wB,GAAa,MAAQ3wB,EAAAA,QAAMC,cAAc2wB,GAAc,QAG9H,MAAM2C,EAAkBvzB,EAAAA,QAAMC,cAAciuB,GAAkB,CAAE1X,MAAOA,GACnEtL,GAAQA,EACRY,GAAS9L,EAAAA,QAAMC,cAAc,OAAQ,KAAM6L,GAC3CsU,GAAYkT,GAChB,OAAQtzB,EAAAA,QAAMC,cAAc+tB,GAAY,CAAEjpB,IAAK9C,EAAIA,GAAI,qBAAqBA,IAAM2F,UAAWA,EAAWN,QAASA,EAASkP,MAAO/K,EAAO+K,MAAOuX,KAAMtiB,EAAOsiB,KAAMtrB,MAAOnG,OAAOC,OAAO,CAAEoL,MAAO8D,EAAO9D,OAAS,QAAUlF,IAAU7D,EAAWoB,EAAKlI,QAACmI,cAAckS,GAAS,CAAEzV,KAAMkC,GAChRoB,EAAKlI,QAACmI,cAAcgtB,GAAgB,KAAMsG,IAAgB,EAAuB,GACtF,CAACL,EAA2B5B,EAAcC,IACvCiC,EAA2BhgB,EAAAA,aAAY,CAAC/H,EAAQhJ,IAAWzC,UAAMC,cAAcswB,GAAoB,CAAExrB,IAAK0G,EAAOxJ,GAAI0F,MAAO8D,EAAO9D,OAAS,OAAQlF,MAAOA,EAAO0sB,UAAWA,KAAe,CAACA,IAC7L7P,EAAe9L,EAAAA,aAAY,KAC7B,IAAKud,EACD,OAAO,KACX,MAAM5qB,EAASssB,IACTgB,EAAqBttB,EAASA,EAAO,GAAG1D,MAAQ,GACtD,OAAQzC,EAAKlI,QAACmI,cAAcytB,GAAM,KAC9B1tB,UAAMC,cAAcmU,GAAK,KACrB8K,GAAmBlf,EAAAA,QAAMC,cAAc+tB,GAAY,CAAEvrB,MAAOnG,OAAOC,OAAO,CAAEoL,MAjK3D,IAiK0F8rB,IAAyC,aAAlBnV,GAAiCte,EAAKlI,QAACmI,cAAc2X,GAAU,CAAEC,QAAUiN,EAAK1jB,OAAS,IAAM8d,aAAuD,EAASA,EAAe9d,UAAY0jB,EAAK1jB,SAAW,EAAO4W,SAAUib,EAAiBlc,SAAWqa,GAAgCA,EAA6BhwB,OAAS,GACvb+tB,GACA8C,EAASla,UAAW,gBAC5BgZ,EAAQxhB,KAAI,CAAC9D,EAAQ6O,KACjB,MAAMoZ,EAAmBxU,EAAiB5E,EAAQ,EAAIA,EAAQ,EACxDqZ,EAAiBrZ,EAAQyW,EAAQ3vB,OACjCwyB,EAAkBztB,aAAuC,EAASA,EAAO0tB,MAAMpxB,GAAUA,EAAM6X,QAAUoZ,GAAoBjxB,EAAM6X,QAAUqZ,IACnJ,OAAOloB,EAAOqoB,WAAa3E,GAAaqC,GAAWS,GAC7CuB,EAAyB/nB,EAAQA,EAAOsoB,eAAiB,CAAA,GACzDV,EAAiB5nB,GAASmoB,aAAyD,EAASA,EAAgBnxB,QAAU,CAAE,EAAC,KAC7H,GACf,CACCgwB,EACAQ,EACAlC,EACAkB,EACAT,EACArC,EACAqE,EACAH,EACAvO,EAAK1jB,OACL8d,EACAZ,EACA8S,IAEE4C,EAAuBxgB,EAAAA,aAAY,CAACygB,EAAYxU,KAClD,MAAMyU,EAAa,CACfrc,QAASoc,EACTjc,SAAWH,GAAYkb,EAAgBlb,EAAS4H,GAChD1I,UAAWqa,aAAmF,EAASA,EAA6BhY,SAASqG,EAAIxd,OAAQ,GAE7J,MAAsB,WAAlBqc,EACOte,EAAKlI,QAACmI,cAAcmY,GAAO9b,OAAOC,OAAO,CAAE,EAAE23B,IAEjDl0B,EAAKlI,QAACmI,cAAc2X,GAAUtb,OAAOC,OAAO,CAAE,EAAE23B,GAAY,GACpE,CAACnB,EAAiBzU,EAAe8S,IAC9B+C,EAA+B3gB,eAAa4gB,IAC9C,MAAMC,EAAe,CACjB1sB,MAAO,GACPrH,OAAQ,GACRg0B,OAAQ,EACRC,kBAAmB,MAEvB,MAAsB,WAAlBjW,EACQte,UAAMC,cAAcovB,GAAc,CAAEtqB,SAAkBwG,IAAb6oB,EAAyB,KAAO,kBAAkBA,IAAY3xB,MAAOnG,OAAOC,OAAOD,OAAOC,OAAO,CAAE,EAAE83B,GAAe,CAAExqB,aAAc,UAEjL7J,UAAMC,cAAcovB,GAAc,CAAEtqB,SAAkBwG,IAAb6oB,EAAyB,KAAO,qBAAqBA,IAAY3xB,MAAOnG,OAAOC,OAAOD,OAAOC,OAAO,CAAE,EAAE83B,GAAe,CAAExqB,aAAc,aAAiB,GAC1M,CAACyU,IACEkW,EAAehhB,EAAAA,aAAY,CAACmS,EAAW8O,KACzC,IAAI/uB,EAAIkgB,EACR,IAAKF,EACD,OAAO,KACX,MAAMtT,EAAUsT,EAAgBC,GAChC,IAAKvT,EACD,OAAO,KACX,MAAMyT,GAAsK,QAA5ID,EAAqF,QAA/ElgB,EAAKigB,aAA6C,EAASA,EAAUN,YAAyB,IAAP3f,OAAgB,EAASA,EAAGogB,qBAAkC,IAAPF,OAAgB,EAASA,EAAGnG,MAAQ,GACxN,OAAQzf,EAAAA,QAAMC,cAAcmU,GAAK,CAAErP,IAAK4gB,EAAU1jB,GAAI2F,UAAW,GAAGie,KAAyB4O,EAAW,SAAW,MAC/GvV,GAAkBlf,EAAKlI,QAACmI,cAAcue,GAAM,MAC5CpM,EAAU,GACf,CAACsT,EAAiBxG,IACfwV,EAA0BlhB,eAAa4gB,IACzC,IAAKrD,EACD,OAAO/wB,UAAMC,cAAcovB,GAAc,MAE7C,MAAMlT,EAAQ4U,EAAQxhB,KAAK9D,GAAWzL,EAAAA,QAAMC,cAAcovB,GAAc,CAAEtqB,IAAK,GAAGqvB,KAAY3oB,EAAOxJ,SAGrG,OAFIid,GACA/C,EAAMwY,QAAQR,EAA6BC,IACxCjY,CAAK,GACb,CAAC4U,EAASoD,EAA8BjV,IACrC0V,EAAY,IACT3D,EAED9B,IAAc+B,IAEb/B,GAAa8C,EADP,KAGHjyB,EAAKlI,QAACmI,cAAcyM,GAAQ,CAAEmhB,kBAAmBuC,GAAsCvC,GAAqB,KAChH7tB,UAAMC,cAAcmU,GAAK,KACrB8K,IAAmBiS,GAA2BnxB,EAAAA,QAAMC,cAAcue,GAAM,OACvE2Q,GAAa8B,EAAgBnM,GAC9BqK,GAAa+B,GAA0BA,MATpC,KAWf,IAAI9D,GAA6B0E,EAC7B5S,GAAkBkO,KAClBA,IAA8B,GAClC,MAAMyH,GAAetuB,EAAAA,SAAQ,IAAMue,EAAKvV,KAAKkQ,IACzC,IAAI/Z,EAAIkgB,EAAIkP,EACZ,MAAMzP,KAAEA,GAAS5F,EACXwU,IAAa/U,GAAiBA,EAAe9F,SAASqG,EAAIxd,IAC1DgkB,GAAa7B,GAAiBA,EAAehL,SAASqG,EAAIxd,IAC1D8yB,EAA0F,QAAzErvB,EAAK2f,aAAmC,EAASA,EAAKS,qBAAkC,IAAPpgB,OAAgB,EAASA,EAAGnI,KAC9Hy3B,EAA+I,QAA5HF,EAA+E,QAAzElP,EAAKP,aAAmC,EAASA,EAAKS,qBAAkC,IAAPF,OAAgB,EAASA,EAAGnG,WAAwB,IAAPqV,EAAgBA,EAAK,GAC5KG,EAAehB,EAAa,YAAYe,IAAoB,GAAGA,IACrE,OAAQh1B,EAAKlI,QAACmI,cAAc8M,GAAM,CAAEhI,IAAK0a,EAAIxd,GAAI2F,UAAWmtB,EAAelH,kBAAmBuC,GAAsCvC,GAAqB,KACrJ7tB,EAAAA,QAAMC,cAAcmU,GAAK,CAAErP,IAAK0a,EAAIxd,GAAI2F,UAAWqtB,EAAc/gB,YAAauL,EAAIvL,aAC9EgL,GAAkBlf,EAAAA,QAAMC,cAAcue,GAAM,KAAMwV,EAAqBC,EAAYxU,IACnF+F,EAAU/F,IACdA,EAAIyG,YAAczG,EAAIyG,WAAW3W,KAAKf,GAASgmB,EAAahmB,GAAOyX,KAAe,KACtF,CACAnB,EACAV,EACAyJ,EACA2G,EACAhP,EACAwO,EACA9U,IAGJ,GAAIiQ,EAAW,CACX,MAAM/J,EAAc,GACpB,IAAK,IAAIvpB,EAAI,EAAGA,EAAI41B,EAAoB51B,GAAK,EACzCupB,EAAYiL,KAAKrwB,EAAKlI,QAACmI,cAAc8M,GAAM,CAAEhI,IAAK,eAAelJ,IAAKgyB,kBAAmBuC,GAAsCvC,GAAqB,KAChJ7tB,UAAMC,cAAcmU,GAAK,KAAM4c,EAAoBhxB,EAAAA,QAAMC,cAAcD,UAAMwP,SAAU,KACnF0P,GAAkBiV,IAClBnD,KAAwB0D,EAAwB74B,MAE5D,OAAQmE,EAAKlI,QAACmI,cAAc+xB,EAAkB,CAAEttB,IAAK6qB,EAAYrC,gBAAgB,EAAMhT,eAAgBA,EAAgBkT,2BAA4BA,GAA4BC,0BAA2B0E,GACtML,GAAkBX,GAAY/wB,UAAMC,cAAcqvB,GAAc,CAAEhQ,aAAcA,EAAcvD,SAAUA,EAAUwT,WAAYA,EAAYnB,cAAeA,EAAeoB,aAAcmC,IACtL3xB,EAAAA,QAAMC,cAAckuB,GAAO,CAAEzpB,IAAKqX,EAAUsS,QAASA,EAASE,OAAQA,EAAQD,cAAc,EAAMF,cAAeA,GAC7G9O,IACA8F,EACAwP,KACX,CAED,GAAI3C,GAAWT,EAAS,CACpB,IAAI0D,EAAsB3Q,GAK1B,OAJIqN,EACAsD,EAAsBtD,EACjBJ,IACL0D,EAAsBrI,IAClB7sB,EAAKlI,QAACmI,cAAc+xB,EAAkB,CAAE9E,gBAAgB,GAC5DltB,EAAAA,QAAMC,cAAckuB,GAAO,CAAEzpB,IAAKqX,EAAUsS,QAASA,EAASE,OAAQA,EAAQD,cAAc,EAAOF,cAAeA,GAC9G9O,IACAsV,KACJ50B,EAAAA,QAAMC,cAAc6uB,GAAexyB,OAAOC,OAAO,CAAE+D,OAAQuxB,GAA8BqD,IAChG,CAED,OAAQl1B,EAAAA,QAAMC,cAAc+xB,EAAkB,CAAE9E,gBAAgB,EAAOxoB,IAAK6qB,EAAYrV,eAAgBA,EAAgBkT,2BAA4BA,GAA4BC,0BAA2B0E,EAAuB5E,cAAeA,GAC7OuE,GAAkBX,GAAY/wB,UAAMC,cAAcqvB,GAAc,CAAEhQ,aAAcA,EAAcvD,SAAUA,EAAUwT,WAAYA,EAAYnB,cAAeA,EAAeoB,aAAcmC,IACtL3xB,EAAAA,QAAMC,cAAckuB,GAAO,CAAEzpB,IAAKqX,EAAUsS,QAASA,EAASE,OAAQA,EAAQD,cAAc,EAAOF,cAAeA,GAC9G9O,IACAuV,GACAD,KAAe,EAE3B/D,GAAgBrS,KAAOA,GACvBqS,GAAgBsE,cV3UczvB,IAC1B,IAAI4B,QAAEA,EAAOtE,SAAEA,GAAa0C,EAAI0F,EAAa1K,EAAOgF,EAAI,CAAC,UAAW,aACpE,OAAQ1F,EAAAA,QAAMC,cAAcue,GAAMliB,OAAOC,OAAO,CAAE,EAAE6O,GAChDpL,EAAKlI,QAACmI,cAAc+uB,GAAiB,CAAE1nB,QAASA,GAAWtE,GAAY,EUyU/E6tB,GAAgBuE,aT7Ua1vB,IACzB,IAAI4B,QAAEA,EAAOtE,SAAEA,GAAa0C,EAAI0F,EAAa1K,EAAOgF,EAAI,CAAC,UAAW,aACpE,OAAQ1F,EAAAA,QAAMC,cAAcue,GAAMliB,OAAOC,OAAO,CAAE,EAAE6O,GAChDpL,EAAAA,QAAMC,cAAc8uB,GAAY,CAAEznB,QAASA,GACvCtH,EAAKlI,QAACmI,cAAckhB,GAAS,KAAMne,IAAa,ES0U5D6tB,GAAgBxB,aAAeA,GAC/BwB,GAAgBzB,gBAAkBA,GCpV3B,MAAMiG,GAAcx9B,EAAMC,QAACa,OAAOX,WAAW,CAAEC,YAAa,mBAAoBC,YAAa,eAAiB,qFCC/Go9B,GAAY,iFAELC,GAAoB,qBCDpBC,GAAoBC,EAAAA,iBAAkB,iDACtCC,GAAc79B,EAAMC,QAAC+U,QAAQ7U,WAAW,CAAEC,YAAa,mBAAoBC,YAAa,aAAe,0BAA0B,EAAGy9B,gBAAiBA,GAAa,cAAcn3B,EAAM5C,MAAMT,SAAS,EAAGy6B,kBAAmBA,GACpO,aACMtoB,GAAKZ,iDACuBlO,EAAMxF,OAAOS,QAAQC,IAAIJ,qBCElDu8B,GAAiB91B,KACjBA,EAAM+1B,WCTNC,GAAY,CACrB55B,GAAI,OACJjB,GAAI,OACJ7B,KAAM,OACN+B,GAAI,QAEK46B,GAAW,CACpB,CAACr7B,EAAYC,QAAS,CAClBuB,GAAI,OACJjB,GAAI,OACJ7B,KAAM,QACN+B,GAAI,SAER,CAACT,EAAYE,QAAS,CAClBsB,GAAI,OACJjB,GAAI,OACJ7B,KAAM,QACN+B,GAAI,SAER,CAACT,EAAYG,UAAW,CACpBqB,GAAI,OACJjB,GAAI,OACJ7B,KAAM,OACN+B,GAAI,SAER,CAACT,EAAYI,SAAU,CACnBoB,GAAI,OACJjB,GAAI,OACJ7B,KAAM,OACN+B,GAAI,QAER,CAACT,EAAYK,WAAY,CACrBmB,GAAI,OACJjB,GAAI,OACJ7B,KAAM,OACN+B,GAAI,SAGC66B,GAA0B,CACnC95B,GAAIxB,EAAYC,OAChBM,GAAIP,EAAYC,OAChBvB,KAAMsB,EAAYE,OAClBO,GAAIT,EAAYG,WCpCdH,YAAEA,IAAgB6D,EACX03B,GAAer+B,EAAAA,QAAO8H,EAAAA,OAAOwD,QAAQnE,MAAM,CACpDm3B,QAAS,CAAE5xB,QAAS,EAAG6xB,GAAI,GAAIC,OAAQ,GACvCC,KAAM,CAAE/xB,QAAS,EAAG6xB,GAAI,GAAIC,OAAQ,GACpCvoB,QAAS,CAAEvJ,QAAS,EAAG6xB,EAAG,EAAGC,OAAQ,GACrCroB,WAAY,CAAEvF,KAAM,QAASwF,SAAU,OACxCjW,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,eAAiB,uCAAuCsG,EAAM5C,MAAMV,iBAAiBsD,EAAMK,QAAQzD,4EAA4EkS,GAAKN,8CAA8C,EAAGjU,aAAc,eAAeg9B,GAAUh9B,SAAe28B,qBAA8Bl3B,EAAM5C,MAAMT,OAAOmS,GAAKZ,kGAAkG/R,GAAYC,iCAAiCD,GAAYE,qBAAqB,EAAG9B,aAAci9B,GAASr7B,GAAYE,QAAQ9B,0BAAgC4B,GAAYE,0BAA0BF,GAAYG,uBAAuB,EAAG/B,aAAci9B,GAASr7B,GAAYG,UAAU/B,0BAAgC4B,GAAYG,4BAA4BH,GAAYI,sBAAsB,EAAGhC,aAAci9B,GAASr7B,GAAYI,SAAShC,0BAAgC4B,GAAYI,sBAAsB,EAAGhC,aAAci9B,GAASr7B,GAAYK,WAAWjC,0BAAgC,EAAGA,aAAck9B,GAAwBl9B,kEAAwEuU,GAAKN,kGAAkG1I,EAAkB9F,EAAMxF,OAAOS,QAAQC,IAAIL,KAAM,kHCV/yCk9B,GAASv2B,EAAAA,QAAMiL,YAAW,CAACvF,EAAIhB,KACxC,IAAIwlB,EAAOxpB,EAAOgF,EAAI,IACtB,OAAO1F,UAAMC,cAAci2B,GAAc55B,OAAOC,OAAO,CAAEmI,IAAKA,GAAOwlB,GAAM,KCFzEtuB,MAAEA,GAAKc,KAAEA,GAAImC,QAAEA,IAAYL,GAC3B7E,KAAEA,IAAS6E,EAAMxF,OAAOS,QACjB+R,GAAS3T,EAAMC,QAAC2T,OAAOzT,WAAW,CAAEC,YAAa,cAAeC,YAAa,eAAiB,WAAW0D,GAAMvC,QAAQuC,GAAMT,wCAAwC,EAAGq7B,YAAwB,SAAXA,GAAqB33B,GAAQ23B,MAClNC,GAAQ5+B,EAAMC,QAAC4+B,GAAG1+B,WAAW,CAAEC,YAAa,aAAcC,YAAa,eAAiB,eAAewE,GAAKjE,UAAUgE,wBAAwBC,GAAKjE,UAAUoE,wBAAwBH,GAAKjE,UAAUmE,yCACpM+5B,GAAW9+B,EAAAA,QAAOiJ,EAAE9I,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,gBAAkB,kCAAkCwE,GAAKS,gBAAgBV,0BAA0BC,GAAKS,gBAAgBP,wBAAwBF,GAAKS,gBAAgBN,wBAAwBH,GAAKS,gBAAgBL,cAC9R85B,GAAQ/+B,EAAAA,QAAOy0B,IAAIt0B,WAAW,CAAEC,YAAa,aAAcC,YAAa,gBAAkB,iBAAiBsG,EAAMvD,OAAO5B,eAAeuC,GAAMM,cAAcvC,GAAKN,yBAChKw9B,GAAmBh/B,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,wBAAyBC,YAAa,eAAiB,iEAC/G4+B,GAAsBj/B,EAAMC,QAACkT,IAAQhM,MAAM,CAAEjG,QAAS,aAAcf,WAAW,CAAEC,YAAa,2BAA4BC,YAAa,gBAAkB,+CAA+CsG,EAAM9B,KAAKoB,KAAKrB,wBAAwB+B,EAAM9B,KAAKoB,KAAKjB,wBAAwB2B,EAAM9B,KAAKoB,KAAKlB,0BAA0B4B,EAAM9B,KAAKoB,KAAKhB,oBAAoB0B,EAAM9B,KAAKoB,KAAKf,iCAAiCyB,EAAM9B,KAAKoB,KAAKd,yCAAyCwB,EAAM5C,MAAMO,OAC5dksB,GAAaxwB,EAAAA,QAAOE,IAAIC,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,eAAiB,yGAAyG0D,GAAMT,iEAAiE,EAAGmtB,eAAc,KAAYA,EAAc,MAAQ,gCCVtUyO,GAAiBh3B,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GAC3JC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,oEAAqEN,KAAM,kBCG7I62B,GAAqBn/B,EAAMC,QAAC0d,IAAOxd,WAAW,CAAEC,YAAa,0BAA2BC,YAAa,gBAAkB,SAASsG,EAAM5C,MAAMR,mCAAmCoD,EAAMxF,OAAOS,QAAQE,KAAKP,0BAA0BoF,EAAMxF,OAAOS,QAAQE,KAAKN,sBAAsBmF,EAAM5C,MAAMO,MAC/R86B,GAAmBp/B,EAAMC,QAACkT,IAAQhT,WAAW,CAAEC,YAAa,wBAAyBC,YAAa,eAAiB,SAASsG,EAAMxF,OAAOS,QAAQC,IAAIL,2DACrJ69B,GAAYr/B,EAAMC,QAACsxB,IAAWpxB,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,iCCJxGi/B,GAAY,EAAGx7B,WAAaqE,EAAKlI,QAACmI,cAAcD,EAAAA,QAAMwP,SAAU,KACzExP,UAAMC,cAAc,MAAO,KACvBD,UAAMC,cAAcnB,EAAM,CAAE/F,QAAS,YAAa,eAAe,GAAQ,MAC7EiH,UAAMC,cAAc+2B,GAAoB,CAAEthB,OAAQ,SAAUC,OAAQ,SAAU,eAAe,GACzF3V,UAAMC,cAAcnB,EAAM,CAAE/F,QAAS,aAAe4C,KCH/Cy7B,GAAgB,EAAGC,cAAaC,kBAAiBC,uBAC1D,MAAOC,EAAgBC,GAAqBvxB,EAAQA,SAAC,GAAGmxB,KAKxD5wB,EAAAA,WAAU,KACNgxB,EAAkB,GAAGJ,IAAc,GACpC,CAACA,IACJ,MAAMK,EAAqB57B,GAAUA,GAAS,GAAKA,GAASw7B,EAuCtDK,EAAe,KAGjB,GAFKH,GACDC,EAAkB,GAAGJ,KACrBG,IAAmB,GAAGH,IACtB,OACJ,MAAM5N,EAAWplB,SAASmzB,EAAgB,IACtCE,EAAkBjO,IAClB8N,EAAiB9N,EAAS,EAWlC,MAAO,CACH+N,iBACAI,gBAvCoB,KAChBF,EAAkBL,EAAc,IAChCE,EAAiBF,EAAc,EAAE,EAsCrCQ,gBAhCoB,KAChBH,EAAkBL,EAAc,IAChCE,EAAiBF,EAAc,EAAE,EA+BrCS,kBAnDuBrO,IAClBA,GACDgO,EAAkBhO,GACtB,MAAMsO,EAAW1zB,SAASolB,EAAU,IAZX,IAACuO,EACtBN,EADsBM,EAaLD,IAXjBN,EAAkB,GAAGO,IAWK,EAgD9BL,eACAM,iBAVsBnzB,IACtBA,EAAMQ,iBACNqyB,GAAc,EASjB,EC5EQO,GAAkBn4B,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GAC5JC,EAAKlI,QAACmI,cAAc,OAAQ,CAAEQ,EAAG,sFAAuFN,KAAM,iBAC9HH,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,yDAA0DN,KAAM,kBCFlIg4B,GAAgBp4B,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GAC1JC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,sFAAuFN,KAAM,iBACxKH,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,kDAAmDN,KAAM,kBCH3Hi4B,GAA6B,CACtC,CAAEvwB,MAAO,YAAa/L,MAAO,IAC7B,CAAE+L,MAAO,YAAa/L,MAAO,IAC7B,CAAE+L,MAAO,YAAa/L,MAAO,IAC7B,CAAE+L,MAAO,aAAc/L,MAAO,MCC5B6T,GAAY9X,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,gBAAkB,iFAC7G6X,GAAWlY,EAAMC,QAACmY,IAAkBjY,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,eAAiB,2BAC7G8S,GAASnT,EAAMC,QAACa,OAAOX,WAAW,CAAEC,YAAa,cAAeC,YAAa,eAAiB,gFAAgFc,EAAOS,QAAQE,KAAKN,oJCHlMsW,GAAY9X,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,iFAC5Guc,GAAa5c,EAAAA,QAAOiH,GAAM9G,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,gBAAkB,4DAA4Dc,EAAOa,UAAUX,KAAKG,mBAAmBL,EAAOS,QAAQE,KAAKR,aCHxNmV,GAAO,EAAGE,OAAM6pB,4BACzB,MAAM/wB,EAAUkM,EAAWA,aAAC,IAAM6kB,EAAsB7pB,IAAO,CAAC6pB,EAAuB7pB,IACvF,OAAQxO,EAAKlI,QAACmI,cAAc0P,GAAW,CAAErI,QAASA,GAC9CtH,UAAMC,cAAcnB,GAAM,CAAE/F,QAAS,aAAeyV,EAAK3G,OAAS,ECF7DywB,GAASv4B,IAClB,MAAMs4B,sBAAEA,EAAqBE,gBAAEA,EAAkBH,IAA+Br4B,EAChF,OAAQC,EAAAA,QAAMC,cAAcD,EAAAA,QAAMwP,SAAU,KAAM+oB,EAAgBhpB,KAAKf,GAAUxO,EAAAA,QAAMC,cAAcuP,EAAAA,SAAU,CAAEzK,IAAKyJ,EAAK3G,OACvH7H,EAAAA,QAAMC,cAAcqO,GAAM,CAAEE,KAAMA,EAAM6pB,sBAAuBA,OAA8B,ECA9F,MAAMG,WAAwB9f,EAAAA,UACjC,WAAA5W,CAAY/B,GACRgC,MAAMhC,GACNiC,KAAKq2B,sBAAyB7pB,IAC1B,MAAMiqB,wBAAEA,GAA4Bz2B,KAAKjC,MACzCiC,KAAK02B,iBAAiBlqB,GACtBiqB,EAAwBjqB,EAAK,EAEjCxM,KAAK02B,iBAAoBC,GAAiB32B,KAAKY,SAAS,CACpDuN,oBAAoB,EACpByoB,cAAeD,IAEnB32B,KAAK62B,iBAAmB,KACpB,MAAM1oB,mBAAEA,GAAuBnO,KAAKG,MACpCH,KAAKY,SAAS,CAAEuN,oBAAqBA,GAAqB,EAE9D,MAAMyoB,cAAEA,EAAgBR,GAA2B,IAAOp2B,KAAKjC,MAC/DiC,KAAKG,MAAQ,CACTy2B,gBACAzoB,oBAAoB,EAE3B,CACD,MAAApN,GACI,MAAM6E,UAAEA,EAAS2wB,gBAAEA,EAAkBH,GAA0BU,iBAAEA,GAAsB92B,KAAKjC,OACtFoQ,mBAAEA,EAAkByoB,cAAEA,GAAkB52B,KAAKG,MACnD,OAAQnC,EAAKlI,QAACmI,cAAc0P,GAAW,CAAE/H,UAAWA,GAChD5H,EAAAA,QAAMC,cAAc8P,GAAU,CAAEG,IAAKlQ,EAAAA,QAAMC,cAAc+K,GAAQ,CAAE1D,QAAStF,KAAK62B,kBACzE74B,EAAKlI,QAACmI,cAAcnB,EAAM,CAAE/F,QAAS,aAAe6/B,EAAc/wB,OAClE7H,EAAKlI,QAACmI,cAAcwK,GAAc,CAAE1N,MAAOyB,EAAMxF,OAAOS,QAAQC,IAAIL,QAAU8W,mBAAoBA,EAAoBC,YAAapO,KAAK62B,iBAAkB7oB,SAAU8oB,GACxK94B,EAAAA,QAAMC,cAAcq4B,GAAO,CAAEC,gBAAiBA,EAAiBF,sBAAuBr2B,KAAKq2B,yBACtG,ECnCE,MAAM1oB,GAAY9X,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,gBAAkB,0EAA0E,EAAGuR,UAAqB,OAATA,EAAgB,OAAS,4BAA6B,EAAGA,UAAoB,OAATA,EACtQ,kGAGA,4VACOsvB,GAAalhC,EAAMC,QAACa,OAAOX,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,gBAAkB,wbCDvG8gC,GAAU,EAAGC,cAAaC,cAAaniB,YAAW,EAAOtN,UAAYzJ,EAAKlI,QAACmI,cAAc0P,GAAW,CAAElG,KAAMA,GACrHzJ,UAAMC,cAAc84B,GAAY,CAAEtwB,KAAM,SAAUnB,QAAS2xB,EAAaliB,SAAUA,GAC9E/W,UAAMC,cAAcH,EAAa,CAAEQ,OAAQ9B,EAAM5C,MAAMvC,KAAMsO,MAAOnJ,EAAM5C,MAAMvC,KAAM0D,MAAOyB,EAAMxF,OAAOS,QAAQC,IAAIL,QAC1H2G,UAAMC,cAAc84B,GAAY,CAAEtwB,KAAM,SAAUnB,QAAS4xB,EAAaniB,SAAUA,GAC9E/W,UAAMC,cAAc0L,GAAe,CAAErL,OAAQ9B,EAAM5C,MAAMvC,KAAMsO,MAAOnJ,EAAM5C,MAAMvC,KAAM0D,MAAOyB,EAAMxF,OAAOS,QAAQC,IAAIL,SCHnHuwB,GAAkB/xB,EAAMC,QAACsxB,IAAWpxB,WAAW,CAAEC,YAAa,uBAAwBC,YAAa,eAAiB,SAASsG,EAAMxF,OAAOS,QAAQC,IAAIJ,+FAA+FkF,EAAMxF,OAAOS,QAAQC,IAAIP,aAC9QggC,GAAkBthC,EAAAA,QAAOD,GAAeI,WAAW,CAAEC,YAAa,uBAAwBC,YAAa,gBAAkB,qCAAqCsG,EAAMxF,OAAOS,QAAQC,IAAIP,2FAA2F,EAAGsQ,UAAqB,OAATA,EAAgB,OAAS,2BAA4B,EAAGsN,cAAgBA,EAAWvY,EAAMxF,OAAOS,QAAQE,KAAKP,MAAQ,yBAA0B,EAAGqQ,UAAqB,OAATA,EAAgB,6BAA+B,wFAC9e2vB,GAAavhC,EAAMC,QAACgH,GAAM9G,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,gBAAkB,kBACtGmhC,GAAkBxhC,EAAMC,QAAC0wB,IAAYxwB,WAAW,CAAEC,YAAa,uBAAwBC,YAAa,gBAAkB,oEAAoE,EAAG4wB,cAAeA,GACrN,+BACwBtqB,EAAMxF,OAAOa,UAAUC,IAAIV,gDAG7BoF,EAAMxF,OAAOa,UAAUC,IAAIT,qCACxBmF,EAAMxF,OAAOa,UAAUC,IAAIT,mEAI7BmF,EAAMxF,OAAOa,UAAUC,IAAIT,mGAK1BmF,EAAMxF,OAAOa,UAAUC,IAAIT,sCACzBmF,EAAMxF,OAAOa,UAAUC,IAAIT,8EAI3BmF,EAAMxF,OAAOa,UAAUC,IAAIT,uCAC1BmF,EAAMxF,OAAOa,UAAUC,IAAIT,mEAGf,EAAGyvB,cAAeA,EAAW,GAAK,aAAatqB,EAAMxF,OAAOa,UAAUX,KAAKE,gDAAgD,EAAG0vB,cAAeA,EAAWtqB,EAAMxF,OAAOa,UAAUC,IAAIT,KAAOmF,EAAMxF,OAAOa,UAAUX,KAAKG,4BAA4B,EAAGyvB,cAAeA,EAAWtqB,EAAMxF,OAAOa,UAAUC,IAAIT,KAAOmF,EAAMxF,OAAOa,UAAUX,KAAKG,0DAA0D,EAAGyvB,cAAeA,EAAWtqB,EAAMxF,OAAOa,UAAUC,IAAIT,KAAOmF,EAAMxF,OAAOa,UAAUX,KAAKG,+EAA+E,EAAGyvB,cAAeA,EAAWtqB,EAAMxF,OAAOa,UAAUC,IAAIT,KAAOmF,EAAMxF,OAAOa,UAAUX,KAAKG,2BAA2B,EAAGyvB,cAAeA,EAAWtqB,EAAMxF,OAAOa,UAAUC,IAAIT,KAAOmF,EAAMxF,OAAOa,UAAUX,KAAKG,gDAAgD,EAAGyvB,cAAeA,EAAWtqB,EAAMxF,OAAOa,UAAUC,IAAIT,KAAOmF,EAAMxF,OAAOa,UAAUX,KAAKG,4BAA4B,EAAGyvB,cAAeA,EAAWtqB,EAAMxF,OAAOa,UAAUC,IAAIT,KAAOmF,EAAMxF,OAAOa,UAAUX,KAAKG,UCtBniC,MAACigC,GAAazQ,IAAYnjB,IAClC,IAAIkC,UAAEA,EAAY,GAAEkhB,SAAEA,EAAQyQ,SAAEA,EAAQxiB,SAAEA,GAAW,EAAKiB,SAAEA,EAAQwhB,cAAEA,EAAaC,WAAEA,EAAUlQ,KAAEA,EAAO,MAAK9f,KAAEA,EAAOgf,GAAcpvB,MAASqM,EAAI0F,EAAa1K,EAAOgF,EAAI,CAAC,YAAa,WAAY,WAAY,WAAY,WAAY,gBAAiB,aAAc,OAAQ,SAC9Q,MAWMkyB,EAAkB,CAACvoB,EAAWmqB,KAGhCnqB,IAFqBqqB,WAAWD,IAAe,GAC3BC,WAAWnQ,IACOoQ,QArBvB,GAqB+C,EAE5D9B,EAAkB,CAACxoB,EAAWmqB,KAGhCnqB,IAFqBqqB,WAAWD,IAAe,GAC3BC,WAAWnQ,IACOoQ,QA1BvB,GA0B+C,EAelE,OAAQ35B,EAAAA,QAAMC,cAAco5B,GAAiB,CAAEzxB,UAAWA,EAAWkhB,SAAUA,GAC3E9oB,EAAKlI,QAACmI,cAAck5B,GAAiB,CAAEpiB,SAAUA,EAAUtN,KAAMA,GAC7DzJ,EAAKlI,QAACmI,cAAcm5B,GAAY,CAAErgC,QAAS,YAAcwgC,IAC7Dv5B,EAAAA,QAAMC,cAAc2pB,GAAiBttB,OAAOC,OAAO,CAAE0B,YAAa,OAAQwK,KAAM,WAAY3M,MAAO29B,EAAYlQ,KAAMA,EAAMvR,SArCzGlc,GAAUkc,EAASlc,EAAMgI,QAAQ,YAAa,IAAIA,QAAQ,IAAK,MAqCkE81B,OApCnIh5B,IAChB,MAAMkQ,EAASlQ,EAAEkQ,QACXhV,MAAEA,GAAUgV,EAClB,IAAKhV,EAED,YADA09B,EAAc,IAGlB,MAAMK,EAbSH,WAaoB59B,EAbHgI,QAAQ,IAAK,MAC/B61B,QAHC,GAgBfH,EAAcK,EAAa,EA4B4IpyB,UAhBpJ7G,IACnB,MAAMmE,IAAEA,GAAQnE,EACVkQ,EAASlQ,EAAEkQ,OACAA,EAAOgpB,MAER,UAAR/0B,GACA+L,EAAOipB,OAEH,YAARh1B,GACA6yB,EAAgB5f,GACR,cAARjT,GACA8yB,EAAgB7f,EAAS,EAKoKjB,SAAUA,EAAUtN,KAAMA,GAAQ2B,IACnOpL,EAAKlI,QAACmI,cAAc+4B,GAAS,CAAEC,YAAa,IAAMrB,IAAmBsB,YAAa,IAAMrB,IAAmB9gB,SAAUA,EAAUtN,KAAMA,IAAU,IAEvJ6vB,GAAWrhC,YAAc,aCjDzB,MAAMyf,GAAQ7f,EAAMC,QAACsxB,IAAWpxB,WAAW,CAAEC,YAAa,aAAcC,YAAa,gBAAkB,4CACjG8hC,GAAgBniC,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,qBAAsBC,YAAa,gBAAkB,qBAC1GyX,GAAY9X,EAAAA,QAAOD,GAAeI,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,sGAAsG,EAAG+hC,mBACvN,IAAIrS,EAAU,yBACVzK,EAAW,iBAKf,MAJqB,SAAjB8c,IACArS,EAAU,uBACVzK,EAAW,iBAER,aACDzF,iBACAkQ,yBAGAoS,iBACA7c,kBAEL,ICpBQ+c,GAAcn6B,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GACxJC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,8fAA+fN,KAAM,kBCC9kBg6B,GAAwB37B,EAAMxF,OAAOS,QAAQE,KAAKR,SAClDihC,GAAoB57B,EAAMxF,OAAOS,QAAQE,KAAKL,KAC9C+gC,GAAoB77B,EAAMxF,OAAOa,UAAUX,KAAKI,KACzCghC,GAA4BziC,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,iCAAkCC,YAAa,eAAiB,4GAA4GiiC,mBAAsCC,0FAAyGC,mBAAkCA,sHAAqI77B,EAAMxF,OAAOS,QAAQE,KAAKL,oHCLxkBihC,GAAc1iC,EAAAA,QAAO2iC,OAAOxiC,WAAW,CAAEC,YAAa,mBAAoBC,YAAa,gBAAkB,ugBAAugB,EAAGuiC,kBAC5nB,IAAIn6B,EAAS,OACTzD,EAAW,OAKf,MAJoB,OAAhB49B,IACAn6B,EAAS,OACTzD,EAAW,QAER,mBACKyD,wBACGzD,UACd,yOCPQ69B,GAAS7R,GAAW5d,EAAAA,YAAW,CAACvF,EAAIhB,KAC7C,IAAIkD,UAAEA,EAAS0L,QAAEA,EAAOxX,MAAEA,EAAKkc,SAAEA,EAAQvO,KAAEA,EAAIsN,SAAEA,EAAQ+R,SAAEA,GAAapjB,EAAI0F,EAAa1K,EAAOgF,EAAI,CAAC,YAAa,UAAW,QAAS,WAAY,OAAQ,WAAY,aACtK,MAAMwS,EAAe1E,eAAa5S,IACzBoX,GAELA,EAASpX,EAAEuX,cAAcrc,MAAM,GAChC,CAACkc,IACJ,OAAQhY,EAAKlI,QAACmI,cAAcs6B,GAAaj+B,OAAOC,OAAO,CAAEqL,UAAWA,EAAW6yB,YAAahxB,EAAM3N,MAAOA,QAAqCA,OAAQyP,EAAWyM,SAAUE,EAAcnB,SAAUA,EAAU+R,SAAUA,EAAUpkB,IAAKA,GAAO0G,KAAekI,GACxPA,EAAQ/D,KAAK4J,GAAYnZ,EAAKlI,QAACmI,cAAc,SAAU,CAAE8E,IAAKoU,EAAOtR,MAAO/L,MAAOqd,EAAOrd,MAAOib,SAAUoC,EAAOpC,UAAYoC,EAAOtR,SAAW,KAExJ6yB,GAAOziC,YAAc,SCVrB,MAAMiB,KAAEA,IAASF,EAAOa,WAClBF,KAAEA,IAASX,EAAOS,QACXkhC,GAAc9iC,EAAMC,QAAC61B,MAAM31B,WAAW,CAAEC,YAAa,mBAAoBC,YAAa,gBAAkB,0BACxG0iC,GAAY/iC,EAAMC,QAAC81B,MAAM51B,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,oCAAoCgB,GAAKC,aAC5I0hC,GAAWhjC,EAAMC,QAAC0qB,GAAGxqB,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,eAAiB,GAC9F4iC,GAAYjjC,EAAMC,QAAC2mB,GAAGzmB,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,gBAAkB,qDAAqD,EAAGse,WAAYA,GAAS,6CAA6C9Z,EAAKc,UAAUf,wBAAwBC,EAAKc,UAAUX,wBAAwBH,EAAKc,UAAUZ,oBAAoBF,EAAKc,UAAUT,qBAAqBnB,EAAMvC,qCACtX0hC,GAAkBljC,EAAMC,QAACgjC,IAAW97B,MAAM,CACnDlG,GAAI,OACLd,WAAW,CAAEC,YAAa,uBAAwBC,YAAa,eAAiB,2BAA2ByB,GAAKL,oBAAoBoD,EAAKiB,cAAclB,wBAAwBC,EAAKiB,cAAcd,wBAAwBH,EAAKiB,cAAcf,oBAAoBF,EAAKiB,cAAcZ,SAC1QoxB,GAAQt2B,EAAAA,QAAO8qB,MAAM3qB,WAAW,CAAEC,YAAa,aAAcC,YAAa,eAAiB,+BAA+B,EAAGm2B,aAAcA,GACpJ,UACGuM,sDACkBjhC,GAAKR,uBCXjB6hC,GAAc,EAAG3M,WAAU,EAAMzmB,YAAW5E,cAAgBhD,EAAKlI,QAACmI,cAAckuB,GAAO,CAAEE,QAASA,EAASzmB,UAAWA,GAAa5E,GAChJg4B,GAAYxvB,OAASmvB,GACrBK,GAAYjuB,KAAO6tB,GACnBI,GAAY5mB,IAAMymB,GAClBG,GAAYhN,WAAa+M,GACzBC,GAAYxc,KAAOsc,GCRnB,MAIMG,GAAkBpjC,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,uBAAwBC,YAAa,eAAiB,kEAAkEgjC,WAC/KC,GAActjC,EAAAA,QAAOE,IAAIC,WAAW,CAAEC,YAAa,mBAAoBC,YAAa,eAAiB,cAAcsG,EAAMxF,OAAOS,QAAQE,KAAKN,eAL9H,0BAMf+hC,GAAYvjC,EAAAA,QAAOE,IAAIC,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,gBAAkB,0BAA0B,YAAqE6H,GAAU,GAAGA,EAAMqd,iBAJtM,+CADA,aAK+S5e,EAAMxF,OAAOa,UAAUX,KAAKG,wEAJ3U,6EAIyemF,EAAMxF,OAAOa,UAAUX,KAAKE,UACnhBiiC,GAAcxjC,EAAMC,QAACqjC,IAAanjC,WAAW,CAAEC,YAAa,mBAAoBC,YAAa,gBAAkB,2BAA4B6H,GAAU,GAAGA,EAAM4H,iBAAkB5H,GAAU,GAAGA,EAAMqd,sBAAsB5e,EAAMxF,OAAOa,UAAUX,KAAKE,gBAPtO,uBCCf6yB,GAAsBzqB,IAAY,CACpCmR,UAAWnR,EAAS,GAAGA,0BAA4B+J,EACnD+vB,YAAa95B,EAAS,GAAGA,sBAAwB+J,EACjDgwB,OAAQ/5B,EAAS,GAAGA,gBAAkB+J,EACtCiwB,YAAah6B,EAAS,GAAGA,sBAAwB+J,EACjDkwB,UAAWj6B,EAAS,GAAGA,oBAAsB+J,ICLpCmwB,GAAM7jC,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,WAAYC,YAAa,eAAiB,sHAAsH,EAAGic,kBAAiBpX,WAAY,gBACtPA,QAAqCA,EAAQ/D,EAAOS,QAAQC,IAAIL,gCACrD8a,QAAyDA,EAAkBnb,EAAOS,QAAQE,KAAKN,cCC1GsiC,GAAwB9jC,EAAMC,QAAC0d,IAAOxd,WAAW,CAAEC,YAAa,6BAA8BC,YAAa,eAAiB,6DAC5H0jC,GAAQ/jC,EAAAA,QAAO2d,IAAOxd,WAAW,CAAEC,YAAa,aAAcC,YAAa,eAAiB,oBAAoBsG,EAAMxF,OAAOS,QAAQC,IAAIJ,+CAA+CkF,EAAMK,QAAQzD,oBAAoBoD,EAAMvD,OAAOE,+CAA+C,EAAG0gC,cAAeA,gOAAuO,EAAGC,UAAYA,EAAO,gBAAkB,6EAA8E,EAAGA,UAAYA,EAAO,mBAAqB,uDAChrBC,GAAWlkC,EAAAA,QAAOD,GAAeI,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,eAAiB,kHAAkHsG,EAAMvD,OAAOE,uBAAuB,EAAG4B,WAAYA,0BAA8BnB,EAAMT,aAAaS,EAAMT,OACtU6gC,GAAenkC,EAAMC,QAAC0d,IAAOxd,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,gBAAkB,eAC3Guc,GAAa5c,EAAMC,QAACgH,GAAM9G,WAAW,CAAEC,YAAa,kBAAmBC,YAAa,gBAAkB,8BCA7G+jC,GAAa,CACfzvB,KAAM,CACF0H,YAAalb,EAAOC,MAAMC,KAAKG,KAC/B6R,KAAMlL,EAAKlI,QAACmI,cAAcqkB,GAAU,OAExC7X,QAAS,CACLyH,YAAalb,EAAOa,UAAUG,MAAMX,KACpC6R,KAAMlL,EAAKlI,QAACmI,cAAcoZ,GAAa,OAE3Chb,MAAO,CACH6V,YAAalb,EAAOa,UAAUC,IAAIT,KAClC6R,KAAMlL,EAAKlI,QAACmI,eCpBUF,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GAC3JC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,yOAA0ON,KAAM,mBDmB9Q,OAE7C+7B,MAAO,CACHhoB,YAAalb,EAAOa,UAAUO,OAAOf,KACrC6R,KAAMlL,EAAKlI,QAACmI,eExBMF,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GACvJC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,2MAA4MN,KAAM,mBFuBpP,QAGvC8rB,GAAsBzqB,IAAY,CACpCmR,UAAWnR,EAAS,GAAGA,yBAA2B+J,EAClDL,KAAM1J,EAAS,GAAGA,oBAAsB+J,EACxC4wB,UAAW36B,EAAS,GAAGA,0BAA4B+J,IAE1CqwB,GAAQ,EAAGh0B,YAAW6d,eAAchd,OAAM2zB,WAAU1/B,OAAMo/B,OAAMD,WAAU3rB,MAAKvL,cACxF,MAAMuM,EAAa+a,GAAmBrkB,GAChCke,EAAgBmG,GAAmBxG,GACzC,OAAQzlB,EAAAA,QAAMC,cAAco8B,GAAgB,CAAEz0B,UAAWtE,EAAgB,CAAC4N,aAA+C,EAASA,EAAWyB,UAAWmT,aAAqD,EAASA,EAAcnT,YAAa8C,UAAW,aAAcE,OAAQ,SAAUkmB,SAAUA,EAAUC,KAAMA,GAClT97B,EAAAA,QAAMC,cAAc87B,GAAU,CAAEh/B,MAAOk/B,GAAWxzB,GAAMyL,YAAatM,UAAWtE,EAAgB,CAAC4N,EAAWhG,KAAM4a,EAAc5a,QAAUkxB,QAA2CA,EAAWH,GAAWxzB,GAAMyC,MACjNlL,UAAMC,cAAc+7B,GAAc,CAAEvmB,UAAW,aAAcE,OAAQ,SAAUD,OAAQ,WACnF1V,EAAKlI,QAACmI,cAAcnB,GAAM,CAAE/F,QAAS,QAAU2D,GAC/CwT,GACJlQ,UAAMC,cAAc+K,GAAQ,CAAEjS,QAAS,OAAQmS,KAAMlL,EAAKlI,QAACmI,cAAc2L,GAAW,CAAE7O,MAAO,UAAYuK,QAAS3C,EAAS,aAAc,UAAa,EGtCxJ23B,GAASzkC,EAAMC,QAACiH,KAAK/G,WAAW,CAAEC,YAAa,cAAeC,YAAa,gBAAkB,0NAA0N,EAAG6e,WAAUwlB,cAAexlB,GAAYwlB,EAAW/9B,EAAMxF,OAAOa,UAAUX,KAAKC,SAAW,oDACjZue,GAAQ7f,EAAMC,QAAC6f,MAAM3f,WAAW,CAAEC,YAAa,aAAcC,YAAa,gBAAkB,qBAAqBokC,2BAA+B99B,EAAMxF,OAAOC,MAAMC,KAAKE,sBAAsBkjC,6CAAiDA,uBAA2B99B,EAAMxF,OAAOS,QAAQE,KAAKN,8BAA8BijC,uBAA2B99B,EAAMxF,OAAOa,UAAUX,KAAKE,UACzXojC,GAAS3kC,EAAAA,QAAOgQ,MAAM7P,WAAW,CAAEC,YAAa,cAAeC,YAAa,gBAAkB,iDAAiD,EAAG6e,cAAgBA,EAAW,UAAY,oBAAqB,EAAG0lB,WAAaA,EAAQ,OAAS,gBAAiB,EAAGA,WAAaA,EAAQ,OAAS,6CAA8CH,mBAAuB,EAAGG,WAAaA,EAAQ,OAAS,gBAAiB,EAAGA,WAAaA,EAAQ,OAAS,eAAgB,EAAGA,WAAaA,EAAQ,MAAQ,gBAAiB,EAAGA,WAAaA,EAAQ,MAAQ,UAAW/kB,gBAAmB4kB,+CAAmD,EAAGG,WAAaA,EAAQ,OAAS,oCAAqC,EAAGA,WAAaA,EAAQ,OAAS,gCAAiC,EAAGA,WAAaA,EAAQ,OAAS,aACpxB3lB,GAAUjf,EAAAA,QAAOD,GAAeI,WAAW,CAAEC,YAAa,eAAgBC,YAAa,gBAAkB,UAAU,EAAG6e,cAAgBA,EAAW,cAAgB,mDCD1J2lB,GAASzxB,EAAAA,YAAW,EAAGhJ,KAAI2F,YAAWyL,OAAMkpB,WAAUE,QAAOn1B,UAAU,SAAWyP,WAAUgB,aAAarT,IAAS1E,EAAAA,QAAMC,cAAc6W,GAAS,CAAElP,UAAWA,EAAWmP,SAAUA,GAC1L/W,UAAMC,cAAcu8B,GAAQ,CAAEC,MAAOA,EAAO1lB,SAAUA,EAAU1W,KAAM,UAClEL,EAAAA,QAAMC,cAAcyX,GAAO,CAAEzV,GAAIA,EAAIwG,KAAM,WAAY4K,KAAMA,EAAM,aAAc0E,EAAWF,UAAW0kB,EAAUvkB,SAAUjB,OAAWxL,EAAYjE,EAASyP,SAAUA,EAAUrS,IAAKA,IACpL1E,UAAMC,cAAcq8B,GAAQ,CAAEC,SAAUA,EAAUxlB,SAAUA,QCNvD8S,GAAehyB,EAAMC,QAACa,OAAOX,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,eAAiB,kIAAkIsG,EAAM/B,2FAA2F,EAAGgN,OAAMoO,cAC/V,IAAIvX,EAAS,OACTqJ,EAAc,OACdC,EAAe,OACfC,EAAe,MACfhN,EAAW,OACXiN,EAAe,MACfqK,EAAkB,QAClBwoB,EAAc,UACd5/B,EAAQ,UAcZ,MAba,OAAT0M,IACAnJ,EAAS,OACTqJ,EAAc,OACdC,EAAe,OACfC,EAAe,MACfhN,EAAW,OACXiN,EAAe,OAEf+N,IACA1D,EAAkB,UAClBwoB,EAAc,UACd5/B,EAAQ,SAEL,4BACc+M,uBAETxJ,2BACMqJ,4BACCC,4BACAC,wBACJhN,iCAEOsX,2BACJwoB,oBACP5/B,UACV,wEACmE,EAAG8a,aAAeA,EAAU,UAAY,wCAAyC,EAAGA,aAAeA,EAAU,UAAY,0BAA2B,EAAGA,aAAeA,EAAU,UAAY,qQCnC9P+kB,GAAe,4FAQRjtB,GAAY9X,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,GAAG0kC,cAAyB78B,GAAWA,EAAMiT,WAAa,UAAY,kBAAmBxU,EAAMC,OAAOE,SAClNk+B,GAAShlC,EAAAA,QAAOD,GAAeI,WAAW,CAAEC,YAAa,cAAeC,YAAa,eAAiB,GAAG0kC,0CACzG9sB,GAAOjY,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,YAAaC,YAAa,gBAAkB,sDCP1G4kC,GAAa,EAAGC,YAAW/5B,cAEjChD,EAAKlI,QAACmI,cAAcD,EAAKlI,QAAC0X,SAAU,KAAMutB,EAAY/8B,EAAAA,QAAMC,cAAc2B,EAAQ,KAAMoB,GAAYA,GACvFg6B,GAAQ,EAAGp1B,YAAW5E,WAAW,KAAMgQ,cAAa,EAAO+pB,aAAY,KAAa/8B,EAAAA,QAAMC,cAAc68B,GAAY,CAAEC,UAAWA,GAC1I/8B,EAAAA,QAAMC,cAAc0P,GAAW,CAAE/H,UAAWtE,EAAgB,CAAC,GAAGsE,cAAuBA,IAAaoL,WAAYA,GAC5GhT,UAAMC,cAAc48B,GAAQ,MAC5B78B,EAAAA,QAAMC,cAAcg9B,EAAAA,QAAY,CAAEnuB,SAAUkE,GACxChT,EAAKlI,QAACmI,cAAc6P,GAAM,CAAElI,UAAWtE,EAAgB,CAAC,GAAGsE,SAAkBA,KAAe5E,MCX3Fk6B,GAAerlC,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,eAAiB,sEACvGilC,GAAetlC,EAAMC,QAACC,IAAIC,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,cAAgB,qFACtGklC,GAAWvlC,EAAMC,QAACkT,IAAQhT,WAAW,CAAEC,YAAa,gBAAiBC,YAAa,eAAiB,yCCJzG,IAAImlC,IACX,SAAWA,GACPA,EAAiB,MAAI,QACrBA,EAAiB,MAAI,QACrBA,EAAiB,MAAI,OACxB,CAJD,CAIGA,KAAcA,GAAY,CAAA,ICA7B,MAAM1tB,GAAY9X,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,qBAC5GolC,GAAczlC,EAAMC,QAACgH,GAAM9G,WAAW,CAAEC,YAAa,mBAAoBC,YAAa,gBAAkB,iBACxGqlC,GAAU1lC,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,eAAgBC,YAAa,eAAiB,iKAAiK,EAAGslC,gBAAeC,sBAAuB,4CAE9RD,EAAcnkC,kCACdmkC,EAAcrkC,2BAGlC2F,qBACS2+B,QAA2DA,EAAmBzkC,EAAOS,QAAQC,IAAIJ,sBAEzG,EAAGokC,SAAQF,mBAAoBE,GAClC,2BACoBF,EAAcrkC,kBAEhCwkC,GAAmB9lC,EAAMC,QAACgH,GAAM9G,WAAW,CAAEC,YAAa,wBAAyBC,YAAa,gBAAkB,iKAAiK,EAAGwlC,SAAQF,mBAAoBE,GACpT,2BACoBF,EAAcnkC,oBAE5BikC,wCAIJM,GAAc,CAChBn7B,MAAO,CACHyT,WAAYta,EAAMO,GAClByrB,QAAShsB,EAAMO,GACfmE,OAAQ1E,EAAMvC,KACdsO,MAAO/L,EAAMvC,OAGRwkC,GAAoBhmC,EAAAA,QAAOE,IAAIC,WAAW,CAAEC,YAAa,yBAA0BC,YAAa,gBAAkB,gDAAgD0D,EAAMV,iBAAiBU,EAAMvC,cAAcuC,EAAMvC,SCnCnNykC,GAAY/9B,GAAWC,EAAAA,QAAMC,cAAc,MAAO3D,OAAOC,OAAO,CAAE2D,QAAS,YAAaC,KAAM,OAAQC,MAAO,8BAAgCL,GACtJC,EAAAA,QAAMC,cAAc,OAAQ,CAAEM,SAAU,UAAWC,SAAU,UAAWC,EAAG,oPAAqPN,KAAM,kBCMpU8rB,GAAsBzqB,IAAY,CACpCu8B,OAAQv8B,EAAS,GAAGA,gBAAkB+J,EACtC+H,QAAS9R,EAAS,GAAGA,iBAAmB+J,EACxCyyB,KAAMx8B,EAAS,GAAGA,cAAgB+J,EAClCoH,UAAWnR,EAAS,GAAGA,mBAAqB+J,EAC5CmyB,OAAQl8B,EAAS,GAAGA,gBAAkB+J,EACtC0yB,QAASz8B,EAAS,GAAGA,iBAAmB+J,ICTtCoE,GAAY9X,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,iBAAkBC,YAAa,eAAiB,wDAC5Gkc,GAAMvc,EAAMC,QAACF,GAAeI,WAAW,CAAEC,YAAa,WAAYC,YAAa,eAAiB,mCAChG0xB,GAAkB/xB,EAAMC,QAACsxB,IAAWpxB,WAAW,CAAEC,YAAa,uBAAwBC,YAAa,gBAAkB,mCACrH2xB,GAAehyB,EAAAA,QAAOmT,IAAQhT,WAAW,CAAEC,YAAa,oBAAqBC,YAAa,eAAiB,8BAA8BsG,EAAMxF,OAAOS,QAAQC,IAAIP,6BAA8B4G,GAAUA,EAAM+oB,UAClN,uBACgBtqB,EAAMxF,OAAOa,UAAUC,IAAIT,eCHlC6kC,GAAcrV,IAAYnjB,IACnC,IAAI+D,KAAEA,EAAOgf,GAAcpvB,KAAIyvB,SAAEA,EAAQlhB,UAAEA,GAAclC,EAAIwkB,EAAOxpB,EAAOgF,EAAI,CAAC,OAAQ,WAAY,cACpG,OAAQ1F,EAAKlI,QAACmI,cAAc0P,GAAW,CAAE/H,UAAWA,GAChD5H,UAAMC,cAAcmU,GAAK,KCTD,MDUL8V,ECVViU,YDUoBn+B,EAAKlI,QAACmI,cAAcuoB,GAAY,KACrDxoB,UAAMC,cAAcmpB,GAAW9sB,OAAOC,OAAO,CAAEkN,KAAMA,EAAMuO,SAAUkS,EAAKkU,iBAAkB/qB,KAAM,OAAQ5K,KAAM,SAAU3M,MAAOouB,EAAKmU,KAAMvV,SAAUA,GAAYoB,IAClKlqB,UAAMC,cAAc+K,GAAQ,CAAE8d,SAAUA,EAAUrf,KAAMA,GAAQ,MCVhD,CAAC1J,GACD,OAArBA,EAAMo+B,YAA4C,OAArBp+B,EAAMo+B,WDUlCG,CAAiBpU,IAAUlqB,EAAAA,QAAMC,cAAcD,EAAAA,QAAMwP,SAAU,KAC3DxP,UAAMC,cAAcuoB,GAAY,KAC5BxoB,UAAMC,cAAcmpB,GAAW9sB,OAAOC,OAAO,CAAEkN,KAAMA,EAAMuO,SAAUkS,EAAKqU,kBAAmBlrB,KAAM,QAAS5K,KAAM,SAAU3M,MAAOouB,EAAKsU,MAAO1V,SAAUA,GAAYoB,IACrKlqB,UAAMC,cAAc+K,GAAQ,CAAE8d,SAAUA,EAAUrf,KAAMA,GAAQ,OACpEzJ,UAAMC,cAAcuoB,GAAY,KAC5BxoB,UAAMC,cAAcmpB,GAAW9sB,OAAOC,OAAO,CAAEkN,KAAMA,EAAMuO,SAAUkS,EAAKuU,kBAAmBprB,KAAM,QAAS5K,KAAM,SAAU3M,MAAOouB,EAAKwU,MAAO5V,SAAUA,GAAYoB,IACrKlqB,EAAAA,QAAMC,cAAc+K,GAAQ,CAAE8d,SAAUA,EAAUrf,KAAMA,GAAQ,SAAY,IAEhGy0B,GAAYjmC,YAAc,cAC1BimC,GAAYxX,aAAe,CACvByX,WAAY,wBEnBS,EAAGv2B,YAAW5E,WAAU6E,QAAOu0B,WAAUh9B,aAAapG,EAAOS,QAAQC,IAAIP,SAAUkX,UAAU,IAAKsuB,cAAaC,wBACpI,MAAOC,EAAYC,GAAiB54B,EAAAA,WAAW04B,GAE/C,OAAQ5+B,EAAKlI,QAACmI,cAAcL,EAAkB,CAAE2H,OAAQq3B,EAAmBh3B,UAAWA,GAClF5H,EAAAA,QAAMC,cAAcX,EAAkB,CAAEgI,QAFzB,IAAMw3B,GAAeD,IAGhC7+B,UAAMC,cAAcT,EAAK,KACrBQ,EAAAA,QAAMC,cAAcd,EAAM,CAAEC,WAAYA,GACpCg9B,EACAp8B,EAAKlI,QAACmI,cAAcnB,EAAM,CAAE/F,QAAS,QAAU8O,IACnD7H,UAAMC,cAAcZ,EAAO,KACvBW,EAAAA,QAAMC,cAAcN,EAAAA,OAAOZ,KAAM,CAAE+O,QAAS,CACpCixB,OAAQF,EAAa,IAAM,IAE/B7+B,UAAMC,cAAcH,EAAa,CAAEuT,KAAMwrB,EAAa,YAAc,iBAC9EF,GAAe3+B,EAAKlI,QAACmI,cAAcR,EAAa,CAAE1G,QAAS,YAAc4lC,IAC/EE,GAAe7+B,EAAAA,QAAMC,cAAcP,EAAkB,CAAEy2B,QAAS,CAAE5xB,QAAS,GAAK+xB,KAAM,CAAE/xB,QAAS,GAAKuJ,QAAS,CAAEvJ,QAAS,GAAKyJ,WAAY,CAAEtF,KAAM,EAAGD,KAAM,QAASwF,SAAUoC,EAAU,MAAUrN,GAAa,uCClBlM,EAAGA,WAAU4E,YAAWlL,OAAMyY,OAAMrE,YAAc9Q,EAAAA,QAAMC,cAAcwP,GAAc,CAAE0F,KAAMA,EAAMrE,OAAQA,EAAQlJ,UAAWA,GAAa5E,GAAYtG,8CCEtJ,EAAGiL,QAAQ,OAAQ0L,OAAO,QAAS/B,UAAU9S,EAAMxF,OAAOa,UAAUX,KAAKG,KAAMgY,YAAY,cAC7G,MAAM2tB,EAAe3rB,EAAK4rB,cAAcC,MAAM,WAC9C,OAAQl/B,EAAKlI,QAACmI,cAAcmR,GAAU,CAAEzJ,MAAOA,EAAO2J,QAASA,EAASD,UAAWA,EAAWzJ,UAAW,UAAYo3B,aAAmD,EAASA,EAAaxkB,MAAM,EAAG,GAAGjL,KAAI,CAAC4mB,EAASt6B,IAAMmE,EAAKlI,QAACmI,cAAc,OAAQ,CAAE8E,IAAK,GAAGoxB,KAAWt6B,KAAOs6B,KAAY,gB7JGjR,EAAGp9B,UAAU,UAAWgb,cAAa,EAAOqoB,WAAUx9B,UAASgJ,YAAW6d,eAAcziB,eACzG,MAAMm8B,EAAez0B,GAAW3R,GAChC,OAAQiH,EAAKlI,QAACmI,cAAckS,GAAS,CAAEzV,KAAMkC,GACzCoB,EAAAA,QAAMC,cAAck/B,EAAc,CAAEv3B,UAAWtE,EAAgB,CAACsE,EAAW6d,IAAgB1R,WAAYA,GACnGqoB,GAAYA,EACZp5B,GAAYhD,EAAKlI,QAACmI,cAAc,OAAQ,KAAM+C,IAAa,iBEEhD0C,IACnB,IAAI+C,KAAEA,EAAO,OAAM/L,KAAEA,EAAIwO,KAAEA,EAAIvG,QAAEA,EAAOiD,UAAEA,EAAS6D,OAAEA,EAAMzI,SAAEA,EAAQmR,gBAAEA,EAAkB,SAAYzO,EAAI3F,EAAQW,EAAOgF,EAAI,CAAC,OAAQ,OAAQ,OAAQ,UAAW,YAAa,SAAU,WAAY,oBACnM,MAAMwO,EAAcQ,GAAajM,GACjC,OAAQzI,EAAKlI,QAACmI,cAAcm/B,GAAM9iC,OAAOC,OAAO,CAAE2X,YAAaA,EAAatM,UAAWA,EAAWuM,gBAAiBA,GAAmBpU,GAClIC,UAAMC,cAAcmU,GAAK,KACrBlJ,GAASlL,EAAAA,QAAMC,cAAcqU,GAAS,CAAE7R,MAAO,CAAE48B,YAAazjC,EAAMT,IAAM+Y,YAAaA,GAAehJ,GACtGlI,EAAYhD,EAAKlI,QAACmI,cAAcsU,GAAgB,KAAMvR,GAAchD,UAAMC,cAAcD,EAAKlI,QAAC0X,SAAU,KACpGxP,EAAAA,QAAMC,cAAcuU,GAAW,KAAM/I,GAAUzL,EAAKlI,QAACmI,cAAcnB,GAAM,CAAE/F,QAAS,gBAAkB2D,IACtGsD,EAAAA,QAAMC,cAAcoU,GAAK,KAAM1P,GAAY3E,UAAMC,cAAc+K,GAAQ,CAAEjS,QAAS,OAAQ,aAAc,QAASmS,KAAMlL,EAAKlI,QAACmI,cAAc2L,GAAW,MAAOtE,QAAS3C,OAAkB,8CIhB7K,EAAG+J,QAAO4wB,YAAYt/B,EAAKlI,QAACmI,cAAcmV,GAAkB,MAAOF,gBAAgBG,MAAoBrV,UAAMC,cAAc2U,GAAe,CAAEhN,UAAW,eAAiB8G,EAAMa,KAAI,CAACf,EAAM3S,IAAOmE,EAAKlI,QAACmI,cAAcgV,GAAY,CAAElQ,IAAKyJ,EAAK1C,MAAOA,MAAO0C,EAAK1C,MAAOqJ,KAAM3G,EAAK+wB,SAAUrqB,cAAerZ,IAAM6S,EAAMtN,OAAS,EAAI8T,EAAgBI,IAAkB5G,EAAMtN,SAAWvF,EAAI,GAAKyjC,kJcS3X,EAAG13B,YAAWlL,OAAM8iC,aAC/C,MAAOC,EAAQC,GAAa1/B,EAAAA,QAAMkG,UAAS,GACrCy5B,EAAansB,EAAAA,aAAY,KAC3BosB,UAAUC,UAAUC,UAAUpjC,GAC1B8iC,GACAA,IACJE,GAAU,GACVK,YAAW,IAAML,GAAU,IAAQ,KAAK,GACzC,CAACF,EAAQ9iC,IACZ,OAAQsD,EAAAA,QAAMC,cAAckS,GAAS,CAAEzV,KAAM+iC,EAAS,UAAY,qBAC9Dz/B,EAAAA,QAAMC,cAAcuZ,GAAU,CAAEzgB,QAAS,OAAQ0Q,KAAM,KAAM7B,UAAWA,EAAW,aAAc,GAAG63B,EAAS,SAAW,WAAW/iC,kBAAsBwO,KAAMu0B,EAAUz/B,EAAKlI,QAACmI,cAAcoZ,GAAa/c,OAAOC,OAAO,CAAEQ,MAAO/D,EAAOa,UAAUG,MAAMX,MAAQkgB,KAAgBvZ,EAAKlI,QAACmI,cAAcqZ,GAAehd,OAAOC,OAAO,CAAEQ,MAAO/D,EAAOa,UAAUX,KAAKG,MAAQkgB,KAAcjS,QAASq4B,IAAgB,+C4ClBxX,EAAGjxB,QAAOsxB,iBACrC,MAAMC,EAAqBtB,GACnBtiB,MAAM6jB,QAAQvB,GACPA,EAAYpvB,KAAK9O,GAAMT,EAAAA,QAAMC,cAAcR,GAAa,CAAEsF,IAAKtE,GAAKA,KAExET,EAAKlI,QAACmI,cAAcR,GAAa,KAAMk/B,GAYlD,OAAO3+B,EAAKlI,QAACmI,cAAc6nB,GAAM,KAAMpZ,EAAMa,KAVzBf,GACZwxB,EACQhgC,EAAAA,QAAMC,cAAc+nB,GAAS,CAAEjjB,IAAKyJ,EAAK2xB,MAC7CngC,EAAAA,QAAMC,cAAcioB,GAAM,KAAM1Z,EAAK2xB,MACrCngC,UAAMC,cAAcgoB,GAAsB,KAAMgY,EAAkBzxB,EAAKmwB,eAEvE3+B,EAAAA,QAAMC,cAAcqO,GAAM,CAAEvJ,IAAKyJ,EAAK2xB,MAC1CngC,EAAAA,QAAMC,cAAcioB,GAAM,KAAM1Z,EAAK2xB,MACrCF,EAAkBzxB,EAAKmwB,gBAE8B,qB8FxBvC,EAAGrf,eAActc,eACvC,MAAOo9B,EAAmBC,GAAwBn6B,EAAQA,UAAC,GAE3D,OAAQlG,EAAKlI,QAACmI,cAAc,OAAQ,KAChCqf,GAFkB,IAAM+gB,GAAsBD,IAElBA,GAC5BpgC,UAAMC,cAAcsoB,GAAkB,KAClCvoB,UAAMC,cAAcooB,GAAY,CAAEC,YAAa8X,GAAqBp9B,IAAa,+C7EEpE,EAAG4E,YAAW6d,eAAc5d,QAAOnL,OAAM0/B,WAAUj8B,OAAOnH,EAAOa,UAAUX,KAAKG,KAAM+Y,UAASzF,SAAQyD,cAAa9I,UAASg5B,0BAAyB,MAC3K,MAAMpvB,EAAa+a,GAAmBrkB,GAChCke,EAAgBmG,GAAmBxG,IACnCtV,mBAAEA,EAAkBsa,yBAAEA,EAAwBC,cAAEA,GAAkBH,KAClEnb,EAAcoE,eAAa1O,IAC7B2lB,IACIra,GAAeD,GACfC,EAAYtL,EAAM,GACvB,CAAC2lB,EAA0Bra,EAAaD,IACrCQ,EAAkB6C,eAAa1O,IAE7BsL,GACAA,EAAYtL,EAAO4lB,GAEnB4V,GACA5V,GAAe,GACpB,CAACA,EAAeta,EAAakwB,IAEhC,OAD0BluB,EACCpS,EAAKlI,QAACmI,cAAc0P,GAAW,CAAE/H,UAAWtE,EAAgB,CAAC4N,aAA+C,EAASA,EAAWyB,UAAWmT,aAAqD,EAASA,EAAcnT,YAAarL,QAASA,GACpQO,GAAS7H,EAAKlI,QAACmI,cAAc6rB,GAAY,CAAE/yB,QAAS,uBAAyB,GAAG8O,MAChF7H,EAAAA,QAAMC,cAAcnB,EAAM,KAAMpC,GAChCsD,EAAAA,QAAMC,cAAc2L,GAAW,CAAEhE,UAAWtE,EAAgB,CAAC4N,aAA+C,EAASA,EAAWib,MAAOrG,aAAqD,EAASA,EAAcqG,QAAS9Y,KAAM,QAAS5J,KAAM,OAAQ1M,MAAO/D,EAAOS,QAAQC,IAAIL,QAAa2G,EAAKlI,QAACmI,cAAc8P,GAAU,CAAEnI,UAAWsJ,EAAWgb,kBAAmB/b,mBAAoBA,EAAoBC,YAAaO,EAAiBT,IAAKlQ,EAAKlI,QAACmI,cAAc0P,GAAW,CAAE/H,UAAWsJ,EAAWyB,UAAWrL,QAAS8H,GAC3fvH,GAAS7H,EAAKlI,QAACmI,cAAc6rB,GAAY,CAAE/yB,QAAS,uBAAyB,GAAG8O,MAChF7H,EAAAA,QAAMC,cAAcnB,EAAM,KAAMpC,GAChCsD,EAAAA,QAAMC,cAAc8rB,GAAU,CAAEhvB,MAAO/D,EAAOS,QAAQC,IAAIL,KAAMga,KAAM,YAAaL,WAAY7C,MACnGnQ,UAAMC,cAAckhB,GAAS,KACzBnhB,EAAAA,QAAMC,cAAcuL,GAAQ,CAAEzO,MAAOoD,GACjCi8B,EACAp8B,EAAKlI,QAACmI,cAAcnB,EAAM,CAAE/F,QAAS,YAAc8O,IACvDuK,EACAzF,GAAS,8BJlCd,UAA6B3J,SAAEA,IAClC,MAAO6nB,EAAkB0V,GAAuBr6B,EAAQA,UAAC,GAkGzD,OAjGAO,EAAAA,WAAU,KACN,SAAS+5B,IACLD,GAAoB,EACvB,CASD,SAASE,EAAqB7/B,GAGtBA,EAAEkQ,OAAO4vB,UAAgD,SAApC9/B,EAAEkQ,OAAO4vB,SAASC,gBAG3CJ,GAAoB,GAEpBK,IACH,CAOD,SAASC,IACLt+B,SAAS6E,iBAAiB,YAAaq5B,GACvCl+B,SAAS6E,iBAAiB,YAAaq5B,GACvCl+B,SAAS6E,iBAAiB,UAAWq5B,GACrCl+B,SAAS6E,iBAAiB,cAAeq5B,GACzCl+B,SAAS6E,iBAAiB,cAAeq5B,GACzCl+B,SAAS6E,iBAAiB,YAAaq5B,GACvCl+B,SAAS6E,iBAAiB,YAAaq5B,GACvCl+B,SAAS6E,iBAAiB,aAAcq5B,GACxCl+B,SAAS6E,iBAAiB,WAAYq5B,EACzC,CACD,SAASG,IACLr+B,SAAS8E,oBAAoB,YAAao5B,GAC1Cl+B,SAAS8E,oBAAoB,YAAao5B,GAC1Cl+B,SAAS8E,oBAAoB,UAAWo5B,GACxCl+B,SAAS8E,oBAAoB,cAAeo5B,GAC5Cl+B,SAAS8E,oBAAoB,cAAeo5B,GAC5Cl+B,SAAS8E,oBAAoB,YAAao5B,GAC1Cl+B,SAAS8E,oBAAoB,YAAao5B,GAC1Cl+B,SAAS8E,oBAAoB,aAAco5B,GAC3Cl+B,SAAS8E,oBAAoB,WAAYo5B,EAC5C,CASD,SAASh5B,EAAU7G,GACXA,EAAEkgC,SAAWlgC,EAAEmgC,QAAUngC,EAAEogC,SAG/BT,GAAoB,EACvB,CAMD,SAASU,IAC4B,WAA7B1+B,SAAS2+B,kBAKTX,GAAoB,GACpBM,IAEP,CAUD,OANAt+B,SAAS6E,iBAAiB,UAAWK,GAAW,GAChDlF,SAAS6E,iBAAiB,YAAao5B,GAAe,GACtDj+B,SAAS6E,iBAAiB,cAAeo5B,GAAe,GACxDj+B,SAAS6E,iBAAiB,aAAco5B,GAAe,GACvDj+B,SAAS6E,iBAAiB,mBAAoB65B,GAAoB,GAClEJ,IACO,KACHt+B,SAAS8E,oBAAoB,UAAWI,GAAW,GACnDlF,SAAS8E,oBAAoB,YAAam5B,GAAe,GACzDj+B,SAAS8E,oBAAoB,cAAem5B,GAAe,GAC3Dj+B,SAAS8E,oBAAoB,aAAcm5B,GAAe,GAC1Dj+B,SAAS8E,oBAAoB,mBAAoB45B,GAAoB,GACrEL,GAAmC,CACtC,GACF,CAACL,IAGJvgC,EAAAA,QAAMC,cAAc0qB,GAAoBwW,SAAU,CAAErlC,MAAO,CAAE+uB,mBAAkBC,eAAe,IAAU9nB,EAC5G,gCkFrGqB,EAAGo+B,MAAKC,MAAM,GAAIz5B,YAAW6d,eAAc9d,QAAOrH,SAAQghC,eAAcC,gBAAeC,mBAAmB,QAASjV,kBAAiB,EAAOtuB,cAAawjC,mBAAkBC,oBAAmBC,sBAAqB,MACnO,MAAMzwB,EAAa+a,GAAmBrkB,GAChCke,EAAgBmG,GAAmBxG,IAClCmc,EAAeC,GAAoB37B,EAAQA,UAAC,IAC5C47B,EAAYC,GAAiB77B,EAAQA,SAAC,CAAE87B,UAAU,EAAOxQ,SAAS,KAClEyQ,EAAkBC,GAAuBliC,EAAAA,QAAMkG,SAAS,OACxDF,EAAeC,GAAoBjG,EAAAA,QAAMkG,SAAS,OACnDC,OAAEA,EAAMC,WAAEA,GAAeE,EAAAA,UAAU27B,EAAkBj8B,EAAe,CACtEJ,UAAW47B,EACXpuB,UAAW,CACP,CACIC,KAAM,SACNC,QAAS,CACLlL,OAAQ,CAAC,EAAG,SAKtB+5B,EAAmB3uB,EAAAA,aAAY,IAAO+Y,EAAiBsV,GAAiB,GAAQ,IAAK,CAACtV,IACtF6V,EAAoB5uB,EAAAA,aAAY,IAAO+Y,EAAiBsV,GAAiB,GAAS,IAAK,CAACtV,IAGxF8V,GAAiBP,EAAWE,UAAYF,EAAWtQ,QACzD,OAAQxxB,UAAMC,cAAc0P,GAAW,CAAE/H,UAAWtE,EAAgB,CAAC4N,aAA+C,EAASA,EAAWyB,UAAWmT,aAAqD,EAASA,EAAcnT,UAAW/K,KACtO5H,EAAAA,QAAMC,cAAcosB,GAAa,CAAE+U,IAAKA,EAAKC,IAAKA,EAAKz5B,UAAWtE,EAAgB,CAAC4N,aAA+C,EAASA,EAAWwb,MAAO5G,aAAqD,EAASA,EAAc4G,QAAS/kB,MAAOA,EAAOrH,OAAQA,EAAQgiC,OAJrQ,IAAMP,EAAc,CAAEC,UAAU,EAAMxQ,SAAS,IAIsO+Q,QAHpR,IAAMR,EAAc,CAAEC,UAAU,EAAMxQ,SAAS,IAGuPjF,eAAgBA,EAAgBhc,aAAc4xB,EAAkB3xB,aAAc4xB,EAAmB3/B,MAAO4/B,EAAgB,CAAEG,QAAS,QAAW,CAAA,EAAI99B,IAAKw9B,KACxcP,GACGU,IACCpkC,GAAgB+B,EAAKlI,QAACmI,cAAcmsB,GAAkB,CAAExkB,UAAWtE,EAAgB,CAAC4N,aAA+C,EAASA,EAAWjT,YAAa6nB,aAAqD,EAASA,EAAc7nB,cAAe0J,MAAO85B,GAAoB95B,EAAOrH,OAAQohC,GAAqBphC,KACnUshC,GACI3+B,EAAYA,aAACjD,EAAKlI,QAACmI,cAAcusB,GAAuBlwB,OAAOC,OAAO,CAAEmI,IAAKuB,EAAkBxD,MAAO0D,EAAOqB,QAAUpB,EAAWoB,OAAQ,CAAEI,UAAWtE,EAAgB,CAC/J4N,aAA+C,EAASA,EAAWyb,sBACnE7G,aAAqD,EAASA,EAAc6G,0BAEhF3sB,EAAKlI,QAACmI,cAAcwsB,GAAc,CAAE2U,IAAKA,EAAKC,IAAK,GAAI15B,MAAO25B,EAAchhC,OAAQihC,KAAmBh/B,SAAShF,MAAQ,mGtD/BlGwC,IAClC,MAAO2sB,EAAO+V,GAAYv8B,EAAQA,SAACovB,IAOnC,OAAQt1B,EAAKlI,QAACmI,cAAco1B,GAAa/4B,OAAOC,OAAO,CAAEmmC,YANjC,KACpBD,EATiB,yFASS,EAKyDE,UAHjE,KAClBF,EAASnN,GAAU,EAE0F,aAAcC,IAAqBx1B,GAChJC,UAAMC,cAAc,MAAO,CAAEmhC,IAAK1U,EAAO2U,IAAK9L,KAAuB,gBuDNvDx1B,IAClB,MAAMiT,WAAEA,EAAU4vB,sBAAEA,GAAwB,EAAIjN,UAAEA,GAAY,EAAK58B,QAAEA,EAAU,OAAQ4L,QAASk+B,EAAa7/B,SAAEA,GAAcjD,EACvH+iC,EAAWpyB,SAAO,OACjBqyB,EAAgBC,GAAqB98B,EAAQA,SAAC,MACrDO,EAAAA,WAAU,KACN,IAAIf,EAAIkgB,EACJ5S,IAC4B,QAA3BtN,EAAKo9B,EAASlyB,eAA4B,IAAPlL,GAAyBA,EAAGu9B,gBAAgB,QACpD,QAA3Brd,EAAKkd,EAASlyB,eAA4B,IAAPgV,GAAyBA,EAAGsd,YACnE,GACF,CAAClwB,IACJ,MAAQoY,cAAe+X,EAAoBxX,SAAEA,GAAaR,GAAiB4X,GACrEp+B,EAAU,KACZ,IAAIe,EACwB,QAA3BA,EAAKo9B,EAASlyB,eAA4B,IAAPlL,GAAyBA,EAAG09B,QAChEP,GAAe,EAEnB,OAAQ7iC,UAAMC,cAAcojC,EAAeA,gBAAE,KAAMrwB,GAAehT,EAAKlI,QAACmI,cAAc,MAAO,CAAE,cAAe,kBAC1GD,UAAMC,cAAcu1B,GAAmB,MACvCx1B,EAAAA,QAAMC,cAAcs2B,GAAQ,CAAE7xB,IAAKo+B,EAAUn+B,QAASA,EAAS5L,QAASA,EAAS,mBAAoB,eACjGiH,EAAAA,QAAMC,cAAcqN,GAAKN,QAAS,KrD7BjB,CAACjN,KACjBA,EAAMujC,WqD6BHC,CAAcxjC,GAAUA,EAAgB,WAAKC,EAAKlI,QAACmI,cAAc4L,GAAYvP,OAAOC,OAAO,CAAE0F,GAAI,cAAe+J,cAAe,eAAgBF,MAAO/L,EAAMyjC,YAAaz3B,SAAUhM,EAAM0jC,gBAAmBb,GAAyB,CAAEv2B,aAAc1H,KACrP3E,EAAAA,QAAMC,cAAcy1B,GAAa,CAAE/J,SAAUA,EAAUjnB,IAAKs+B,EAAmBpN,aAAcuN,EAAsBxN,UAAWA,GAAa3yB,GAC3I6yB,GAAc91B,IAAUA,EAAM+1B,YAC7BD,GAAc91B,KAAWA,EAAM2jC,aAAe3jC,EAAM4jC,eAAkB3jC,EAAAA,QAAMC,cAAcqN,GAAKZ,OAAQ,KACpG1M,EAAAA,QAAMC,cAAcuV,GAAO,CAAEC,UAAW,aAAcC,OAAQ3V,EAAM2jC,YAAc,UAAY,OAC1F3jC,EAAM2jC,aAAgB1jC,UAAMC,cAAcuV,GAAO,CAAEC,UAAW,aAAcC,OAAQ,QAAS,cAAe,0BAA4B3V,EAAM2jC,YAAYn0B,KAAK7J,IAC3J,IAAImC,MAAEA,GAAUnC,EAAIk+B,EAAcljC,EAAOgF,EAAI,CAAC,UAC9C,OAAQ1F,EAAKlI,QAACmI,cAAc+K,GAAQ1O,OAAOC,OAAO,CAAEwI,IAAK8C,EAAOY,KAAM,UAAYm7B,GAAc/7B,EAAQ,KAE5G9H,EAAM4jC,cAAiB3jC,UAAMC,cAAcuV,GAAO,CAAEC,UAAW,aAAcC,OAAQ,MAAO,cAAe,2BAA6B3V,EAAM4jC,aAAap0B,KAAK7J,IAC5J,IAAImC,MAAEA,GAAUnC,EAAIk+B,EAAcljC,EAAOgF,EAAI,CAAC,UAC9C,OAAQ1F,EAAKlI,QAACmI,cAAc+K,GAAQ1O,OAAOC,OAAO,CAAEwI,IAAK8C,EAAOY,KAAM,UAAYm7B,GAAc/7B,EAAQ,UAC9F,qBCrCZ,EAAGiE,QAAOC,WAAU83B,WAAUnkB,UAASokB,eAAcC,aAAYxsB,YAAWif,SAAS,OAAQwN,kBAAiBC,cAAaC,2BACjJ,MAAMC,EAAgBzkB,GAAY1f,EAAAA,QAAMC,cAAcwO,GAAY,CAAEG,cAAgBk1B,EAA2B,UAAZ,UAAuBh4B,MAAO,UAAW6C,SAAU+Q,IAChJ0kB,EAAqBN,aAAmD,EAASA,EAAav0B,KAAKtD,GAAYjM,EAAKlI,QAACmI,cAAc+K,GAAQ,CAAEjG,IAAKkH,EAAOH,MAAO/S,QAASkT,EAAOlT,QAASmS,KAAMe,EAAOf,KAAM5D,QAAS2E,EAAO3E,SAAW2E,EAAOH,SAC9Ou4B,EAAmBN,GAAe/jC,UAAMC,cAAc+K,GAAQ,CAAE1D,QAASy8B,EAAWz8B,QAAS4D,KAAMlL,EAAAA,QAAMC,cAAc82B,GAAe,MAAOh+B,QAAS,QAAUgrC,EAAWj4B,OAC3Kw4B,EAAsBJ,GAAyBlkC,EAAAA,QAAMC,cAAcuV,GAAO,CAAEC,UAAW,aAAcC,OAAQ,OAC/G1V,EAAAA,QAAMC,cAAc62B,GAAqB,CAAExvB,QAAS48B,GAChDlkC,EAAAA,QAAMC,cAAc,OAAQ,KAAM,kBAClCD,UAAMC,cAAc+U,GAAgB,CAAErN,MAAO/L,EAAMT,OAC3D,OAAQ6E,EAAKlI,QAACmI,cAAcuL,GAAQ,CAAEgrB,OAAQA,GAC1Cx2B,UAAMC,cAAcuV,GAAO,KACvB6uB,EACArkC,UAAMC,cAAcooB,GAAY,KAC5BroB,EAAKlI,QAACmI,cAAcuV,GAAO,CAAEC,UAAW,aAAcG,QAAS,MAC3DiuB,GAAY7jC,EAAAA,QAAMC,cAAc22B,GAAO,CAAEwK,IAAKyC,EAAUxC,IAAK,GAAI15B,MAAO,KAAMrH,OAAQ,OACtFN,EAAKlI,QAACmI,cAAc,MAAO,CAAEwC,MAAO,CAAEolB,KAAM,IACxC7nB,EAAAA,QAAMC,cAAcuV,GAAO,CAAEE,OAAQ,WACjC1V,EAAAA,QAAMC,cAAcw2B,GAAO,KAAM3qB,GACjCyL,EACAxL,GAAY/L,EAAKlI,QAACmI,cAAc02B,GAAU,KAAM5qB,MAC5D/L,UAAMC,cAAc42B,GAAkB,KAClC72B,UAAMC,cAAcuV,GAAO,CAAEC,UAAW,aAAcC,OAAQ,MAAOE,QAAS,MAC1EwuB,EACAD,EACAH,GAAmBhkC,EAAAA,QAAMC,cAAc+K,GAAQ,CAAEE,KAAMlL,EAAAA,QAAMC,cAAc82B,GAAe,MAAOzvB,QAAS08B,IAC1GC,GAAejkC,EAAAA,QAAMC,cAAc+K,GAAQ,CAAEE,KAAMlL,EAAAA,QAAMC,cAAc+U,GAAgB,MAAO1N,QAAS28B,KAC3GK,KAAyB,qBCvBnB,EAAGC,SAAQ9e,eAAc4R,cAAaC,kBAAiBC,uBAC7E,MAAMC,eAAEA,EAAcI,gBAAEA,EAAeC,gBAAEA,EAAeI,iBAAEA,EAAgBH,kBAAEA,EAAiBH,aAAEA,GAAkBP,GAAc,CAC3HC,cACAC,kBACAC,qBAgBJ,OAAQv3B,EAAKlI,QAACmI,cAAcuV,GAAO,CAAEC,UAAW,aAAcE,OAAQ,SAAUC,QAAS,KAAM,cAAe2uB,EAAQ38B,UAAW6d,GAC7HzlB,EAAKlI,QAACmI,cAAcg3B,GAAkB,CAAE3vB,QAZrB,KACC,IAAhB+vB,GACAE,EAAiB,EAAE,EAU0CrsB,KAAMlL,EAAKlI,QAACmI,cAAci4B,GAAgB,MAAOzuB,KAAM,KAAM,aAAc,qBAC5IzJ,UAAMC,cAAcg3B,GAAkB,CAAE3vB,QAASuwB,EAAiB3sB,KAAMlL,EAAKlI,QAACmI,cAAc82B,GAAe,MAAOttB,KAAM,KAAM,aAAc,sBAAuB,gBAAiB4tB,GAAe,IACnMr3B,EAAAA,QAAMC,cAAc,OAAQ,CAAEukC,SAAUvM,GACpCj4B,EAAAA,QAAMC,cAAci3B,GAAW,CAAE,YAAa,SAAU,aAAc,QAAQG,QAAkBC,IAAmB7tB,KAAMgf,GAAcvtB,GAAIuN,KAAM,SAAU3M,MAAO07B,EAAgB5d,IAAK,IAAKC,IAAK,GAAGyd,IAAmBtf,SAAU8f,EAAmB8B,OAAQjC,KAChQ33B,EAAAA,QAAMC,cAAck3B,GAAW,CAAEx7B,MAAO27B,IACxCt3B,UAAMC,cAAcg3B,GAAkB,CAAE3vB,QAASswB,EAAiB1sB,KAAMlL,EAAKlI,QAACmI,cAAc+U,GAAgB,MAAOvL,KAAM,KAAM,aAAc,kBAAmB,gBAAiB4tB,GAAeC,IAChMt3B,UAAMC,cAAcg3B,GAAkB,CAAE3vB,QAXpB,KAChB+vB,IAAgBC,GAChBC,EAAiBD,EAAgB,EAS6BpsB,KAAMlL,UAAMC,cAAck4B,GAAc,MAAO1uB,KAAM,KAAM,aAAc,kBAAmB,gBAAiB4tB,GAAeC,IAAqB,uIC9BrM,EAAG7uB,OAAO,OAAQsO,YAAW,EAAO0tB,eAAczsB,WAAU4hB,SAAQ8K,UAASC,UAASl9B,YAAWm9B,aAAY9oC,QAAQ,GAAIuC,QAAOJ,cAAc,GAAI2J,YAAY,GAAIyL,OAAM8b,aAAY,EAAOhvB,OAAM6P,YAAW,EAAO60B,eAAe,KAAMp7B,OAAO,WACjQ,MAAMq7B,EAAkBhpC,GAASA,EAAMsF,OAAS,EAYhD,OAAQpB,EAAKlI,QAACmI,cAAc0P,GAAW,CAAE/H,UAAWA,EAAWqyB,aAAcjqB,EAAW,OAAS,SAC7FhQ,EAAKlI,QAACmI,cAAcyX,GAAO,CAAEjO,KAAMA,EAAMhB,KAAMA,EAAM3M,MAAOA,EAAOkc,SAAUA,EAAU4hB,OAAQA,EAAQ8K,QAASA,EAASC,QAASA,EAASl9B,UAAWA,EAAWm9B,WAAYA,EAAY3mC,YAAaA,EAAaoV,KAAMA,EAAM0D,SAAUA,EAAU1Y,MAAOA,EAAOwmC,aAAcA,IAC/Q7kC,EAAKlI,QAACmI,cAAc+5B,GAAe,KAZ/B7K,EACOnvB,EAAKlI,QAACmI,cAAcoJ,GAAQ,CAAE/I,OAAQ,GAAIvD,MAAOoD,GAAQ3B,EAAMxF,OAAOa,UAAUX,KAAKG,OAE5FyrC,GAAmBL,EACXzkC,EAAKlI,QAACmI,cAAc+K,GAAQ,CAAEjS,QAAS,WAAYuO,QAASm9B,EAAchiC,MAAO,CAAE+/B,QAAS,QAAU,aAAc,cACxHxiC,EAAAA,QAAMC,cAAc2L,GAAW,CAAE7O,MAAOoD,GAAQ3B,EAAMxF,OAAOS,QAAQC,IAAIJ,QAEzE0G,EAAAA,QAAMC,cAAc+K,GAAQ,CAAEjS,QAAS,WAAYuO,QAAS,IAAM0Q,EAASlc,GAAQ2G,MAAO,CAAE+/B,QAAS,QAAU,aAAc,UACjIxiC,EAAKlI,QAACmI,cAAci6B,GAAY,CAAEn9B,MAAOoD,GAAQ3B,EAAMxF,OAAOS,QAAQC,IAAIJ,KAAMgH,OAAQ1E,EAAMT,GAAIwM,MAAO/L,EAAMT,OAI1D,2BCnBjC,EAAGmY,UAASyF,WAAUnR,YAAWoQ,cAAiBhY,EAAAA,QAAMC,cAAcq6B,GAA2B,CAAE1yB,UAAWA,EAAY,GAAGA,mBAAwB2D,GAAa+H,EAAQ/D,KAAK4J,GAAYnZ,EAAKlI,QAACmI,cAAc+K,GAAQ,CAAEjS,QAASogB,EAAOrd,QAAUid,EAAW,UAAY,UAAWhU,IAAKoU,EAAOpU,IAAKuC,QAAS,IAAM0Q,EAASmB,EAAOrd,OAAQib,SAAUoC,EAAOpC,SAAUnP,UAAWuR,EAAOrd,QAAUid,EAAW,iCAAmC,IAAMI,EAAOtR,kE5BOzc,EAAG5F,KAAInG,QAAO8d,MAAKC,MAAK0P,OAAO,EAAGvR,WAAUpQ,YAAW6d,eAAcsf,eAAe,SAAWC,aAAa,aAC9H,MAAO/nB,EAAYgoB,GAAiB/+B,EAAQA,UAAC,IACtCg/B,EAAqBC,GAA0Bj/B,EAAAA,UAAU,GAC1D8V,EAAetL,SAAO,MACtB00B,EAAiB10B,SAAO,MACxB20B,EAAe30B,SAAO,MACtBQ,EAAa+a,GAAmBrkB,GAChCke,EAAgBmG,GAAmBxG,GACnC6f,EAAkB9xB,eAAa5S,IACjC,IAAI8E,EACJ,IAAKuX,IAAejB,EAAapL,QAC7B,OACJ,MAAM20B,EAAcL,GAAuB,EAAIppC,EAAMopC,GAAuBppC,EACtE0pC,EAAgBxpB,EAAapL,QAAQ2L,wBAI3C,IAAIkN,EAF+C,KAA7B7oB,EAAE6kC,MAAQD,EAAcnoB,GAAYmoB,EAAc79B,MAE5B,KAA5BkS,EAAMD,GAA6BA,EACnD,MAAM8rB,EAAOH,EAAc9b,EAQ3B,GANIic,EAAO,IACPjc,EAAW8b,EAAc9jC,KAAKkkC,KAAKlc,EAAWF,EAAOgc,EAAchc,GAAQA,GAE3Emc,EAAO,IACPjc,EAAW8b,EAAc9jC,KAAKC,MAAM+nB,EAAWF,EAAOgc,EAAchc,GAAQA,GAE5Egc,IAAgB9b,EAChB,OACAA,EAAW5P,IACX4P,EAAW5P,GACX4P,EAAW7P,IACX6P,EAAW7P,GACXyC,MAAM6jB,QAAQpkC,KACc,IAAxBopC,GAA6Bzb,EAAW3tB,EAAM,MAC3C,CAAA2tB,GAAY3tB,GACS,IAAxBopC,GAA6Bzb,EAAW3tB,EAAM,MAC7C2tB,GAAY3tB,IAGrB,MAAM8pC,EAAgBrc,EAAKjJ,WAAWlH,SAAS,KACG,QAA3C1T,EAAK6jB,EAAKjJ,WAAWulB,MAAM,KAAKC,aAA0B,IAAPpgC,OAAgB,EAASA,EAAGtE,OAChF,EAEN,IAAI2kC,EADJtc,EAAWuc,OAAOvc,EAASkQ,QAAQiM,IAG/BG,EADA1pB,MAAM6jB,QAAQpkC,GACwB,IAAxBopC,EAA4B,CAACzb,EAAU3tB,EAAM,IAAM,CAACA,EAAM,GAAI2tB,GAG9DA,EAElBzR,EAAS+tB,GACL1pB,MAAM6jB,QAAQ6F,IAAgBA,EAAY,KAAOA,EAAY,KACjC,IAAxBb,GACAC,EAAuB,GACC,IAAxBD,GACAC,EAAuB,GAC9B,GACF,CAACD,EAAqBjoB,EAAYpD,EAAKD,EAAK5B,EAAUuR,EAAMztB,IACzDmqC,EAAgBzyB,EAAAA,aAAY,KAC9ByxB,GAAc,GACdD,GAAY,GACb,CAACA,IACEkB,EAAkB1yB,EAAAA,aAAY,CAAC5S,EAAG0Z,KACpC2qB,GAAc,GACdF,IACqB,iBAAVzqB,GACP6qB,EAAuB7qB,GAC3B1Z,EAAE0E,gBAAgB,GACnB,CAACy/B,IACJt+B,EAAAA,WAAU,KACN,MAAM0/B,EAA8BvlC,GAAMslC,EAAgBtlC,EAAGyb,MAAM6jB,QAAQpkC,GAAS,EAAI,GAClFsqC,EAA4BxlC,GAAMslC,EAAgBtlC,EAAG,GACrDylC,EAAgBjB,EAAex0B,QAC/B01B,EAAcjB,EAAaz0B,QAKjC,OAJAy1B,SAA8DA,EAAcj/B,iBAAiB,YAAa++B,GAC1GG,SAA0DA,EAAYl/B,iBAAiB,YAAag/B,GACpG7jC,SAAS6E,iBAAiB,YAAak+B,GACvC/iC,SAAS6E,iBAAiB,UAAW6+B,GAC9B,KACHI,SAA8DA,EAAch/B,oBAAoB,YAAa8+B,GAC7GG,SAA0DA,EAAYj/B,oBAAoB,YAAa++B,GACvG7jC,SAAS8E,oBAAoB,YAAai+B,GAC1C/iC,SAAS8E,oBAAoB,UAAW4+B,EAAc,CACzD,GACF,CAACC,EAAiBZ,EAAiBW,EAAenqC,IACrD,MAAMyqC,EAAe,CAACnpB,EAAMopB,EAAUlsB,KAClC,IAAImsB,EASJ,OAPIA,EAAkBnjC,EADD,iBAAVgX,EACqC,IAAVA,EAC5B,CAACpJ,aAA+C,EAASA,EAAWsqB,YAAa1V,aAAqD,EAASA,EAAc0V,aAC7J,CAACtqB,aAA+C,EAASA,EAAWuqB,UAAW3V,aAAqD,EAASA,EAAc2V,WAG/H,CAACvqB,aAA+C,EAASA,EAAWqqB,OAAQzV,aAAqD,EAASA,EAAcyV,SAEtLv7B,EAAKlI,QAACmI,cAAcm7B,GAAW,CAAE/6B,KAAM,SAAUqE,IAAe,IAAV4V,EAAc+qB,EAAeD,EAAgBx9B,UAAW6+B,EAAiBrpB,KAAMA,EAAM,gBAAiBxD,EAAK,gBAAiBC,EAAK,gBAAiB2sB,GAAa,EAE3NE,EAAqBC,IAEvB,MAAMC,EAAkF,KAA7DD,EAAiB,GAAK/sB,EAAM,EAAI+sB,EAAiB,GAAK/sB,IAAeC,EAAMD,GAChGitB,EAAkF,KAA/DF,EAAiB,GAAK9sB,EAAM,IAAM8sB,EAAiB,GAAK/sB,IAAeC,EAAMD,GAChGktB,EAAaD,EAAiBD,EACpC,OAAQ5mC,UAAMC,cAAcD,EAAKlI,QAAC0X,SAAU,KACxCxP,EAAAA,QAAMC,cAAco7B,GAAa,CAAEzzB,UAAWtE,EAAgB,CAAC4N,aAA+C,EAASA,EAAWoqB,YAAaxV,aAAqD,EAASA,EAAcwV,cAAele,KAAMwpB,EAAkBj/B,MAAOm/B,IACzQP,EAAaK,EAAkBD,EAAiB,GAAI,GACpDJ,EAAaM,EAAgBF,EAAiB,GAAI,GAAK,EAc/D,IAAI5jC,EAKJ,OAHIA,EADAsZ,MAAM6jB,QAAQpkC,GACL4qC,EAAkB5qC,GAdJ,CAACypC,IACxB,GAAIlpB,MAAM6jB,QAAQpkC,GACd,OAAO4qC,EAAkB5qC,GAC7B,IAAIirC,EAOJ,OALIA,EADAjrC,EAAQ+d,EACM,IACT/d,EAAQ8d,EACC,EAEuB,KAArB2rB,EAAc3rB,IAAeC,EAAMD,GAChD2sB,EAAaQ,EAAaxB,EAAY,EAMpCyB,CAAmBlrC,GACxBkE,EAAKlI,QAACmI,cAAcg7B,GAAiB,CAAErzB,UAAWtE,EAAgB,CAAC4N,aAA+C,EAASA,EAAWyB,UAAWmT,aAAqD,EAASA,EAAcnT,YAAa1Q,GAAIA,EAAIyC,IAAKsX,GAC3Phc,UAAMC,cAAck7B,GAAa,MACjCp4B,EAAS,8G6BnIW,EAAG6E,YAAW6d,eAAcwhB,SAAQpL,WAAW,OAAQhiB,MAAM,EAAGlV,cACxF8B,EAAAA,WAAU,KACFoT,GAAOotB,EAAO7lC,OAASyY,GACvBlV,EAAQsiC,EAAO,GAAGliC,IAAI,GAC3B,CAACkiC,EAAQptB,EAAKlV,IACV1B,eAAajD,EAAAA,QAAMC,cAAc07B,GAAuB,CAAElmB,UAAW,WAAYC,OAAQ,SAAUE,QAAS,GAC/G5V,EAAAA,QAAMC,cAAcinC,kBAAiB,CAAEC,UAAW,MAAQ,IAAIF,GAAQG,UAAU73B,KAAI,CAAC83B,EAAO/sB,IAAWta,EAAKlI,QAACmI,cAAc+Q,EAAAA,cAAe,CAAEjM,IAAKsiC,EAAMtiC,IAAKsL,QAAS,IAAKa,WAAY,0BAClLlR,EAAAA,QAAMC,cAAc27B,GAAOt/B,OAAOC,OAAO,CAAEqL,UAAWA,EAAW6d,aAAcA,EAAcoW,SAAUA,EAAUC,KAAMxhB,IAAU2sB,EAAO7lC,OAAS,EAAGuD,QAAS,IAAMA,EAAQ0iC,EAAMtiC,MAAQsiC,SAAc9kC,SAAShF,8CCVhM,EAAGyF,WAAU6U,UAASpO,OAAO,OAAQsN,YAAW,EAAOiB,cAAiBhY,EAAAA,QAAMC,cAAc4pB,GAAc,CAAEphB,KAAM,SAAUoP,QAASA,EAASpO,KAAMA,EAAMsN,SAAUA,EAAU,eAAgBc,EAASyvB,SAAU,IAAKhgC,QAAS,IAAM0Q,GAAUH,IAAY7U,yCCG7P,EAAGf,KAAIslC,iBAAgBC,iBAAgBC,uBAC7D,MAAM/iC,EAAMylB,GAAgBqd,EAAgBC,GAC5C,OAAQznC,UAAMC,cAAc+8B,GAAO,CAAEhqB,WAAYw0B,EAAgB5/B,UAAW,GAAG3F,WAC3EjC,EAAAA,QAAMC,cAAci9B,GAAc,CAAE,cAAe,4BAA6Bt1B,UAAW,iBAAgB4/B,EAAiB,UAAY,WACpIxnC,EAAAA,QAAMC,cAAck9B,GAAc,CAAEz4B,IAAKA,GACrC1E,UAAMC,cAAc,SAAU,CAAE6L,MAAO,GAAG7J,UAAYm/B,IAAK,iCAAiCmG,IAAkBG,YAAa,IAAKC,MAAO,2FAA4FC,iBAAiB,IACpP5nC,UAAMC,cAAcm9B,GAAU,CAAErkC,QAAS,OAAQuO,QAASmgC,EAAkB,cAAe,qBAAsBv8B,KAAMlL,UAAMC,cAAc2L,GAAW,CAAE7O,MAAO,cAAkB,ehBK7K,EAAGkF,KAAIm6B,WAAU/oB,OAAM5K,OAAMb,YAAW41B,gBAAgBxkC,EAAOa,UAAUX,KAAMukC,mBAAkB9hC,QAAO+hC,UAAS,EAAOp2B,UAASugC,WAAUC,SAAQriB,mBACnK,MAAMvU,EAAa+a,GAAmBrkB,GAChCke,EAAgBmG,GAAmBxG,IAClCwF,EAAW8c,EAAaC,GAAejd,KACxC3b,EAAcoE,EAAWA,aAAC,IAAMlM,EAAQrF,IAAK,CAACA,EAAIqF,IAClD2gC,EAAez0B,eAAa1O,IAC9BA,EAAMojC,kBACFL,GACAA,EAAS5lC,EAAG,GACjB,CAAC4lC,EAAU5lC,IACRkmC,EAAa30B,eAAa1O,IAC5BA,EAAMojC,kBACFJ,GACAA,EAAO7lC,EAAG,GACf,CAAC6lC,EAAQ7lC,IACNmmC,EAAU3/B,IAAS40B,GAAUgL,MAC7BC,EAAU7/B,IAAS40B,GAAUkL,MAC7BpoC,EAAOu9B,EAAS1kC,EAAOS,QAAQC,IAAIJ,KAAON,EAAOS,QAAQC,IAAIL,KACnE,OAAQ2G,EAAKlI,QAACmI,cAAc0P,GAAW,CAAE/H,UAAW,GAAGtE,EAAgB,CAAC4N,aAA+C,EAASA,EAAWyB,UAAWmT,aAAqD,EAASA,EAAcnT,eAAgB+qB,IAAW5X,aAAqD,EAASA,EAAc4X,SAAY,KAAMp2B,QAAS8H,GAChWpP,EAAAA,QAAMC,cAAcs9B,GAAS,CAAEG,OAAQA,EAAQntB,aAAcw3B,EAAav3B,aAAcw3B,EAAaxK,cAAeA,EAAeC,iBAAkBA,GACjJrB,GAAYp8B,EAAAA,QAAMC,cAAc49B,GAAmB,KAAMzB,GACzDp8B,EAAKlI,QAACmI,cAAcnB,EAAM,CAAE/F,QAAS,YAAcsa,GACnD1X,GAAUqE,EAAKlI,QAACmI,cAAc09B,GAAkB,CAAED,OAAQA,GAAUzS,EAAWuS,cAAeA,EAAeC,iBAAkBA,GAC3Hz9B,EAAKlI,QAACmI,cAAcq9B,GAAa,CAAE11B,UAAWke,aAAqD,EAASA,EAAcmY,QAASllC,QAAS,mBAAqB4C,IACrKysC,GAAYpoC,EAAKlI,QAACmI,cAAc2L,GAAWtP,OAAOC,OAAO,CAAA,EAAIqhC,GAAa,CAAE7gC,MAAOoD,EAAMyH,UAAWke,aAAqD,EAASA,EAAciY,OAAQz2B,QAAS2gC,KACjMK,GAAW5K,GAAW19B,UAAMC,cAAc69B,GAAUxhC,OAAOC,OAAO,CAAE,EAAEqhC,GAAa,CAAE7gC,MAAOoD,EAAMyH,UAAWke,aAAqD,EAASA,EAAckY,KAAM12B,QAAS6gC,MAAmB,qOiBxC5M,CAACrsC,EAAOuU,KAC/B,MAAOlO,EAAOS,GAAYsD,EAAQA,SAACpK,GAOnC,OANA2K,EAAAA,WAAU,KAEN,MAAM+hC,EAAUzI,YAAW,IAAMn9B,EAAS9G,IAAQuU,GAElD,MAAO,IAAMo4B,aAAaD,EAAQ,GACnC,CAAC1sC,EAAOuU,IACJlO,CAAK,4E3FoGT,WACH,MAAOumC,EAAWC,GAAgB3oC,EAAAA,QAAMkG,UAAS,IAC3C2kB,iBAAEA,EAAgBC,cAAEA,GAAkB9qB,EAAAA,QAAM4oC,WAAWje,IACvD+Z,EAAU1kC,UAAMwT,aAAY,KACzBk1B,GACDC,GAAa,EAAK,GACvB,CAACD,IACE9O,EAAS55B,UAAMwT,aAAY,KACzBk1B,GACAC,GAAa,EAAM,GACxB,CAACD,IACJ,IAAIG,EAQJ,OANIA,EADA/d,EACeD,GAAoB6d,EAIpBA,EAEZ1oC,EAAAA,QAAMuG,SAAQ,KAAO,CACxBsiC,eACAnE,UACA9K,YACA,CAACiP,EAAcjP,EAAQ8K,GAC/B,oE4FpIO,WACH,MAAOtgB,EAAgB0kB,GAAqB5iC,EAAQA,SAAC,IAsBrD,MAAO,CACH6iC,iBAAkB,CACd3kB,iBACAW,YAvBY,CAAC3X,EAAUuR,KAC3B,GAAKA,EAEL,GAAIvR,EAAU,CAEV,GAAIgX,EAAehL,SAASuF,GACxB,OACJ,MAAMkB,EAAS,IAAIuE,EAAgBzF,GACnCmqB,EAAkBjpB,EACrB,KACI,CAED,MAAMvF,EAAQ8J,EAAetE,WAAW7d,GAAOA,IAAO0c,IACtD,GAAIrE,EAAQ,EACR,OACJ,MAAMuF,EAAS,IAAIuE,GACnBvE,EAAOE,OAAOzF,EAAO,GACrBwuB,EAAkBjpB,EACrB,IAQT,uEC7BuB,CAACmpB,EAAM32B,KAC1B,MAAM42B,mBAAEA,EAAqB,GAAM52B,GAAU,CAAA,GACtC62B,GAAchjC,EAAQA,SAAC8iC,IACvBtL,EAAQyL,GAAajjC,EAAQA,SAACgjC,EAAWD,IAChD,MAAO,CACHvL,EACC34B,IACG,MAAMqkC,EAAeF,EAAWrV,MAAMwV,GAAQA,EAAItkC,MAAQA,IACtDqkC,GACAD,EAAUC,EACb,EAER,yBCZ0B1wB,GAAe3Y,IAC1C0G,EAAAA,WAAU,KAENE,QAAQC,KAAK,GAAG8R,EAAUrF,sBAAsB,GACjD,IACIrT,EAAKlI,QAACmI,cAAcyY,EAAWpc,OAAOC,OAAO,CAAE,EAAEwD","x_google_ignoreList":[13]}
|